Computer >> Máy Tính >  >> Lập trình >> MySQL

Có thể sử dụng truy vấn UPDATE với LIMIT trong MySQL không?

Có, có thể sử dụng truy vấn UPDATE với LIMIT trong MySQL. Hãy để chúng tôi xem cách thực hiện.

Đối với ví dụ của chúng tôi, trước tiên chúng tôi sẽ tạo một bảng. Lệnh CREATE được sử dụng để tạo bảng.

mysql>CREATE table tblUpdateLimit
-> (
-> id int,
-> name varchar(100)
-> );
Query OK, 0 rows affected (0.53 sec)

Các bản ghi được chèn với sự trợ giúp của lệnh INSERT.

mysql>INSERT into tblUpdateLimit values(1,'John');
Query OK, 1 row affected (0.54 sec)

mysql>INSERT into tblUpdateLimit values(2,'Carol');
Query OK, 1 row affected (0.12 sec)

mysql>INSERT into tblUpdateLimit values(3,'Smith');
Query OK, 1 row affected (0.10 sec)

mysql>INSERT into tblUpdateLimit values(4,'Kayle');
Query OK, 1 row affected (0.44 sec)

mysql>INSERT into tblUpdateLimit values(5,'David');
Query OK, 1 row affected (0.13 sec)

mysql>INSERT into tblUpdateLimit values(6,'Jason');
Query OK, 1 row affected (0.18 sec)

mysql>INSERT into tblUpdateLimit values(7,'Larry');
Query OK, 1 row affected (0.15 sec)

mysql>INSERT into tblUpdateLimit values(8,'Serhat');
Query OK, 1 row affected (0.15 sec)

mysql>INSERT into tblUpdateLimit values(9,'Winny');
Query OK, 1 row affected (0.18 sec)

Để hiển thị bảng trên, đây là truy vấn.

mysql> SELECT *from tblUpdateLimit;

Sau đây là kết quả đầu ra.

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

Bây giờ chúng ta hãy xem cú pháp để sử dụng truy vấn CẬP NHẬT có giới hạn.

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 );

Triển khai truy vấn ngay bây giờ để thực hiện mục đích của chúng tôi và sử dụng truy vấn để đặt tên ‘Adam’, với giới hạn 7.

mysql> UPDATE tblUpdateLimit SET name = 'Adam'
-> WHERE id IN (
SELECT id FROM ( select id from tblUpdateLimit order by id asc limit 0,7)l);
Query OK, 7 rows affected (0.27 sec)
Rows matched: 7 Changed: 7 Warnings: 0

Kiểm tra xem bảng đã được cập nhật hay chưa.

mysql> SELECT *from tblUpdateLimit;

Đây là kết quả đầu ra.

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