Mệnh đề LIMIT trong SQL

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.

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 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.

Truy vấn sau với mệnh đề LIMIT chấp nhận hai đối số:

SELECT
    column1,column2,...
FROM
    table
LIMIT count1, count2;

Với count1 là vị trí bắt đầu sẽ lấy bản ghi, count2 là số lượng bản ghi sẽ được trả về. Các bạn tham khảo các ví dụ sau để hiểu hơn.

Ví dụ

Giả sử bảng STUDENT có các bản ghi sau:

IDNONAMEBIRTHDAYSEXADDRESSSCORES
1100kumori1991-01-01namfukuoka5000
2101yamada1991-02-01nunagasaki6000
3102takata1995-05-20namtokyo4000
4103yoshida1991-05-30namosaka6000
5104ishibashi1998-06-01nukumamoto7000
6105toyota1997-02-09nuyamaguchi8000
7106tokuda1994-02-24namfukyoka9000

Ví dụ1: để chọn 3 học sinh đầu tiên từ bảng STUDENT, bạn sử dụng truy vấn sau:

SELECT *
FROM student
LIMIT 3;

Kết quả:

IDNONAMEBIRTHDAYSEXADDRESSSCORES
1100kumori1991-01-01namfukuoka5000
2101yamada1991-02-01nunagasaki6000
3102takata1995-05-20namtokyo4000

Ví dụ1: để chọn 5 học sinh từ vị trí thứ 2 trở đi từ bảng STUDENT, bạn sử dụng truy vấn sau:

SELECT *
FROM student
LIMIT 2, 5;

Kết quả:

IDNONAMEBIRTHDAYSEXADDRESSSCORES
3102takata1995-05-20namtokyo4000
4103yoshida1991-05-30namosaka6000
5104ishibashi1998-06-01nukumamoto7000
6105toyota1997-02-09nuyamaguchi8000
7106tokuda1994-02-24namfukyoka9000

Ngoài ra các bạn có thể kết hợp với các mệnh đề khác như ORDER BY để tìm ra giá trị bản ghi phù hợp.

Ví dụ ở bảng trên, ta sẽ lấy 3 học sinh có số No lớn nhất bằng câu lệnh sau.

SELECT *
FROM student
ORDER BY NO DESC
LIMIT 3;

Kết quả:

IDNONAMEBIRTHDAYSEXADDRESSSCORES
7106tokuda1994-02-24namfukyoka9000
6105toyota1997-02-09nuyamaguchi8000
5104ishibashi1998-06-01nukumamoto7000

Bình luận về bài viết này