Từ khóa LIMIT là gì?
Từ khóa giới hạn được sử dụng để giới hạn số lượng hàng được trả về trong kết quả truy vấn.
Nó có thể được sử dụng cùng với các lệnh CHỌN, CẬP NHẬT HOẶC XÓA
Cú pháp cho từ khóa LIMIT như sau
SELECT {fieldname(s) | *} FROM tableName(s) [WHERE condition] LIMIT N;
ĐÂY
- "SELECT {fieldname(s) | *} FROM tableName(s)" là câu lệnh CHỌN chứa các trường mà chúng tôi muốn trả về trong truy vấn của chúng tôi.
- "[WHERE condition]" là tùy chọn nhưng khi được cung cấp, có thể được sử dụng để chỉ định bộ lọc trên tập kết quả.
- "LIMIT N" là từ khóa và N là bất kỳ số nào bắt đầu từ 0, đặt 0 làm giới hạn không trả về bất kỳ bản ghi nào trong truy vấn. Đặt một số nói 5 sẽ trả lại năm hồ sơ. Nếu các bản ghi trong bảng được chỉ định nhỏ hơn N, thì tất cả các bản ghi từ bảng truy vấn được trả về trong tập kết quả.
Hãy xem một ví dụ -
SELECT * FROM members LIMIT 2;
Và đây là kết quả
membership_ number | full_ names | gender | date_of _birth | date_of _registration | physical_ address | postal_ address | contact_ number | email | credit_ card_ number |
1 | Janet Jones | Female | 21-07-1980 | NULL | First Street Plot No 4 | Private Bag | 0759 253 542 | janetjones@yagoo.cm
| NULL |
2 | Janet Smith Jones | Female | 23-06-1980 | NULL | Melrose 123 | NULL | NULL | jj@fstreet.com | NULL |
Như bạn có thể thấy từ ảnh chụp màn hình ở trên, chỉ có hai thành viên đã được trả lại.
Lấy danh sách mười (10) thành viên chỉ từ cơ sở dữ liệu
Giả sử rằng chúng tôi muốn nhận danh sách 10 thành viên đã đăng ký đầu tiên từ cơ sở dữ liệu Myflix. Chúng tôi sẽ sử dụng các kịch bản sau đây để đạt được điều đó.
SELECT * FROM members LIMIT 10;
Thực hiện đoạn script trên cho chúng ta kết quả hiển thị bên dưới
membership_ number | full_ names | gender | date_of _birth | date_of _registration | physical_ address | postal_ address | contact_ number | email | credit_ card_ number |
1 | Janet Jones | Female | 21-07-1980 | NULL | First Street Plot No 4 | Private Bag | 0759 253 542 | janetjones@yagoo.cm | NULL |
2 | Janet Smith Jones | Female | 23-06-1980 | NULL | Melrose 123 | NULL | NULL | jj@fstreet.com | NULL |
3 | Robert Phil | Male | 12-07-1989 | NULL | 3rd Street 34 | NULL | 12345 | rm@tstreet.com | NULL |
4 | Gloria Williams | Female | 14-02-1984 | NULL | 2nd Street 23 | NULL | NULL | NULL | NULL |
5 | Leonard Hofstadter | Male | NULL | NULL | Woodcrest | NULL | 845738767 | NULL | NULL |
6 | Sheldon Cooper | Male | NULL | NULL | Woodcrest | NULL | 976736763 | NULL | NULL |
7 | Rajesh Koothrappali | Male | NULL | NULL | Woodcrest | NULL | 938867763 | NULL | NULL |
8 | Leslie Winkle | Male | 14-02-1984 | NULL | Woodcrest | NULL | 987636553 | NULL | NULL |
9 | Howard Wolowitz | Male | 24-08-1981 | NULL | SouthPark | P.O. Box 4563 | 987786553 | lwolowitz[at]email.me | NULL |
Lưu ý chỉ có 9 thành viên đã được trả về trong truy vấn của chúng tôi vì N trong mệnh đề LIMIT lớn hơn số lượng tổng số bản ghi trong bảng của chúng tôi.
Viết lại đoạn script trên như sau
SELECT * FROM members LIMIT 9;
Chỉ trả về 9 hàng trong tập kết quả truy vấn của chúng tôi.
Sử dụng OFF SET và LIMIT trong câu truy vấn
Các OFF SET giá trị cũng thường được sử dụng cùng với các từ khóa LIMIT. Giá trị OFF SET cho phép chúng tôi chỉ định hàng nào sẽ bắt đầu từ khi truy xuất dữ liệu
Giả sử rằng chúng tôi muốn có một số lượng thành viên hạn chế bắt đầu từ giữa các hàng, chúng tôi có thể sử dụng từ khóa LIMIT cùng với giá trị offset để đạt được điều đó. Kịch bản hiển thị bên dưới nhận dữ liệu bắt đầu từ hàng thứ hai và giới hạn kết quả là 2.
SELECT * FROM `members` LIMIT 1, 2;
Việc thực thi đoạn script trên trong bàn làm việc của MySQL đối với myflixdb cho kết quả như sau.
membership_ number | full_ names | gender | date_of _birth | date_of _registration | physical_ address | postal_ address | contact_ number | email | credit_ card_ number |
2 | Janet Smith Jones | Female | 23-06-1980 | NULL | Melrose 123 | NULL | NULL | jj@fstreet.com | NULL |
3 | Robert Phil | Male | 12-07-1989 | NULL | 3rd Street 34 | NULL | 12345 | rm@tstreet.com | NULL |
Lưu ý rằng ở đây OFFSET = 1 Do đó hàng # 2 được trả về & Giới hạn = 2 , do đó chỉ có 2 bản ghi được trả về
Khi nào chúng ta nên sử dụng từ khóa LIMIT?
Giả sử rằng chúng tôi đang phát triển ứng dụng chạy trên myflixdb. Nhà thiết kế hệ thống của chúng tôi đã yêu cầu chúng tôi giới hạn số lượng bản ghi được hiển thị trên một trang để nói 20 bản ghi trên mỗi trang để chống lại thời gian tải chậm. Làm thế nào để chúng ta đi về việc thực hiện hệ thống đáp ứng các yêu cầu người dùng như vậy? Từ khóa LIMIT có ích trong các tình huống như vậy. Chúng tôi có thể giới hạn kết quả được trả về từ một truy vấn chỉ còn 20 bản ghi trên mỗi trang.
Tóm lược
- Từ khóa LIMIT được sử dụng để giới hạn số lượng hàng được trả về từ tập kết quả.
- Số LIMIT có thể là bất kỳ số nào từ 0 (0) trở lên. Khi không (0) được chỉ định làm giới hạn, không có hàng nào được trả về từ tập kết quả.
- Giá trị OFF SET cho phép chúng tôi chỉ định hàng nào sẽ bắt đầu từ khi truy xuất dữ liệu
- Nó có thể được sử dụng cùng với các lệnh CHỌN, CẬP NHẬT HOẶC XÓA
Đăng nhận xét