Mệnh đề LIMIT trong MySQL được sử dụng để hạn chế số lượng bản ghi được trả về bởi câu lệnh SELECT.
Nội dung chính
Cú pháp
Cú pháp cơ bản của mệnh đề LIMIT với câu lệnh SELECT sẽ như sau.
SELECT column1,column2,... FROM table LIMIT offset, count;
Mệnh đề LIMIT chấp nhận một hoặc hai đối số. Các giá trị của cả hai đối số phải bằng 0 hoặc số nguyên dương.
TH1: Khi bạn sử dụng mệnh đề LIMIT với một đối số, đối số này sẽ được sử dụng để xác định số lượng hàng tối đa trả về từ đầu tập kết quả.
SELECT column1,column2,... FROM table LIMIT count;
TH2: Truy vấn trên tương đương với truy vấn sau với mệnh đề LIMIT chấp nhận hai đối số:
SELECT column1,column2,... FROM table LIMIT 0 , count;
Ví dụ sử dụng LIMIT trong MySQL để có N hàng đầu tiên
Giả sử bảng CUSTOMERS có các bản ghi sau:
+----+----------+-----+-----------+----------+ | ID | NAME | AGE | ADDRESS | SALARY | +----+----------+-----+-----------+----------+ | 1 | Ha Anh | 32 | Da Nang | 2000.00 | | 2 | Van Ha | 25 | Ha Noi | 1500.00 | | 3 | Vu Bang | 23 | Vinh | 2000.00 | | 4 | Thu Minh | 25 | Ha Noi | 6500.00 | | 5 | Hai An | 27 | Ha Noi | 8500.00 | | 6 | Hoang | 22 | Ha Noi | 4500.00 | | 7 | Binh | 24 | Ha Noi | 10000.00 | +----+----------+-----+-----------+----------+
Ví dụ: để chọn 3 khách hàng đầu tiên từ bảng CUSTOMERS, bạn sử dụng truy vấn sau:
SELECT * FROM CUSTOMERS LIMIT 3;
Câu lệnh trên sẽ tạo ra kết quả sau:
Ví dụ sử dụng LIMIT trong MySQL để có được giá trị cao nhất và thấp nhất
Mệnh đề LIMIT thường được sử dụng với các ORDER BY. Đầu tiên, bạn sử dụng mệnh đề ORDER BY để sắp xếp tập kết quả dựa trên các tiêu chí nhất định và sau đó bạn sử dụng mệnh đề LIMIT để tìm giá trị thấp nhất hoặc cao nhất.
Ví dụ 1: để chọn 3 khách hàng hàng đầu có tuổi lớn nhất, bạn có thể sử dụng câu lệnh sau:
SELECT * FROM CUSTOMERS ORDER BY AGE DESC LIMIT 3;
Ví dụ 2: để chọn 3 khách hàng hàng đầu có tuổi nhỏ nhất, bạn có thể sử dụng câu lệnh sau:
SELECT * FROM CUSTOMERS ORDER BY AGE ACS LIMIT 3;