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

Tại sao “LIMIT 0” thậm chí còn được cho phép trong các câu lệnh SELECT trong MySQL?

Như bạn biết nếu bạn sử dụng LIMIT 0 trong câu lệnh MySQL SELECT, nó sẽ trả về một tập hợp trống.

LIMIT có thể được sử dụng khi bạn muốn một số hàng được chỉ định từ một kết quả thay vì toàn bộ các hàng. Nếu bạn sử dụng bất kỳ MySQL API nào, thì công việc của LIMIT là lấy loại cột kết quả.

LIMIT 0 có thể được sử dụng để kiểm tra tính hợp lệ của một truy vấn. Để biết thêm chi tiết, hãy sử dụng liên kết sau -

 https://dev.mysql.com/doc/refman/8.0/en/limit-optimization.html 

Đây là bản demo của LIMIT 0. Truy vấn để tạo bảng như sau -

 mysql> create table Limit0Demo -> (-> Id int NOT NULL AUTO_INCREMENT, -> Name varchar (20), -> PRIMARY KEY (Id) ->); Truy vấn OK, 0 hàng bị ảnh hưởng (0,61 giây)  

Bây giờ bạn có thể chèn một số bản ghi trong bảng bằng cách sử dụng lệnh insert. Truy vấn như sau -

 mysql> chèn vào các giá trị Limit0Demo (Tên) ('David'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,13 giây) mysql> chèn vào giá trị Limit0Demo (Tên) ('Larry'); Truy vấn OK, 1 hàng bị ảnh hưởng ( 0,24 giây) mysql> chèn vào giá trị Limit0Demo (Tên) ('Carol'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,17 giây) mysql> chèn vào giá trị Limit0Demo (Tên) ('Bob'); Truy vấn OK, 1 hàng bị ảnh hưởng ( 0,12 giây) mysql> chèn vào giá trị Limit0Demo (Tên) ('John'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,11 giây) mysql> chèn vào giá trị Limit0Demo (Tên) ('Sam'); Truy vấn OK, 1 hàng bị ảnh hưởng ( 0,11 giây) mysql> chèn vào giá trị Limit0Demo (Tên) ('James'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,12 giây) mysql> chèn vào giá trị Limit0Demo (Tên) ('Maxwell'); Truy vấn OK, 1 hàng bị ảnh hưởng ( 0,13 giây) mysql> chèn vào giá trị Limit0Demo (Tên) ('Ricky'); Truy vấn OK, 1 hàng bị ảnh hưởng (0,09 giây) mysql> chèn vào giá trị Limit0Demo (Tên) ('Adam'); Truy vấn OK, 1 hàng bị ảnh hưởng ( 0,06 giây) 

Bây giờ bạn có thể hiển thị tất cả các bản ghi từ bảng bằng cách sử dụng câu lệnh select. Truy vấn như sau -

 mysql> select * từ Limit0Demo; 

Sau đây là kết quả -

 + ---- + --------- + | Id | Tên | + ---- + --------- + | 1 | David || 2 | Larry || 3 | Carol || 4 | Bob || 5 | John || 6 | Sam || 7 | James || 8 | Maxwell || 9 | Ricky || 10 | Adam | + ---- + --------- + 10 hàng trong bộ (0,00 giây) 

Trường hợp 1 :Sử dụng giới hạn 0.

Truy vấn như sau -

 mysql> select * từ Limit0Demo limit 0; Empty set (0.00 giây) 

Trường hợp 2 :Khi bạn muốn số hàng cụ thể từ bảng. Truy vấn như sau -

 mysql> select * từ Limit0Demo giới hạn 3; 

Sau đây là kết quả -

 + ---- + ------- + | Id | Tên | + ---- + ------- + | 1 | David || 2 | Larry || 3 | Carol | + ---- + ------- + 3 hàng trong bộ (0,00 giây)