English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

MySQL에서 UPDATE 쿼리와 LIMIT를 함께 사용할 수 있습니까?

네, MySQL에서 UPDATE 쿼리와 LIMIT을 함께 사용할 수 있습니다. 그 방법을 보겠습니다.

위의 예제에서는 테이블을 먼저 생성하겠습니다. CREATE 명령어는 테이블을 생성하는 데 사용됩니다.

mysql>CREATE table tblUpdateLimit
-> (
-> id int,
-> name varchar(100)
-> );

데이터는 INSERT 명령어의 도움으로 입력됩니다。

mysql> INSERT into tblUpdateLimit values(1,'John');
mysql> INSERT into tblUpdateLimit values(2,'Carol');
mysql> INSERT into tblUpdateLimit values(3,'Smith');
mysql> INSERT into tblUpdateLimit values(4,'Kayle');
mysql> INSERT into tblUpdateLimit values(5,'David');
mysql> INSERT into tblUpdateLimit values(6,'Jason');
mysql> INSERT into tblUpdateLimit values(7,'Larry');
mysql> INSERT into tblUpdateLimit values(8,'Serhat');
mysql> INSERT into tblUpdateLimit values(9,'Winny');

위 테이블을 표시하려면 이 쿼리입니다。

mysql> SELECT *from tblUpdateLimit;

이것은 출력입니다。

+------+--------+
| id        | name        |
+------+--------+
| 1    | John      |
| 2    | Carol     |
| 3    | Smith     |
| 4    | Kayle     |
| 5    | David     |
| 6    | Jason     |
| 7    | Larry     |
| 8    | Serhat    |
| 9    | Winny     |
+------+--------+
9 set의 rows (0.00 초)

제한된 UPDATE 쿼리의 문법을 살펴보겠습니다。

UPDATE yourTableName SET column_name='some value’'
WHERE column_name1 IN (
SELECT column_name1 FROM (
select column_name1 from yourTableName order by column_name1 asc limit integerValue,integerValue)
anyAliasName);

지금 우리의 목적을 달성하기 위해 쿼리를 실행하고 그것을 이름 "Adam"으로 설정하려고 합니다(제한 조건)7)。

mysql> UPDATE tblUpdateLimit SET name = 'Adam'
-> WHERE id IN (
SELECT id FROM (select id from tblUpdateLimit order by id asc limit 0,7);
일치하는 행: 7 변경됨: 7 경고: 0

테이블이 업데이트되었는지 확인합니다。

mysql> SELECT *from tblUpdateLimit;

이것은 출력입니다。

+------+--------+
| id        | name        |
+------+--------+
| 1    | Adam      |
| 2    | Adam      | 
| 3    | Adam      |
| 4    | Adam      |
| 5    | Adam      |
| 6    | Adam      |
| 7    | Adam      |
| 8    | Serhat    |
| 9    | Winny     |
+------+--------+
9 set의 rows (0.00 초)