Để lấy giá trị lớn thứ N (ví dụ thứ 4), bạn sắp xếp giảm dần (ORDER BY ... DESC) rồi dùng LIMIT 1 OFFSET N-1 (bỏ qua N-1 giá trị lớn hơn, lấy 1 giá trị tiếp theo).
Ví dụ minh họa
Tạo bảng:
mysql> create table DemoTable (
Amount int
);
Chèn dữ liệu:
mysql> insert into DemoTable values(980); mysql> insert into DemoTable values(670); mysql> insert into DemoTable values(890); mysql> insert into DemoTable values(995); mysql> insert into DemoTable values(198);
Hiển thị dữ liệu:
mysql> select * from DemoTable;
Kết quả:
+--------+ | Amount | +--------+ | 980 | | 670 | | 890 | | 995 | | 198 | +--------+
Truy vấn lấy giá trị lớn thứ 4
mysql> select * from DemoTable order by Amount desc limit 1 offset 3;
Kết quả:
+--------+ | Amount | +--------+ | 670 | +--------+
Giải thích:
ORDER BY Amount DESC: Sắp xếp: 995, 980, 890, 670, 198OFFSET 3: Bỏ qua 3 giá trị đầu (995, 980, 890)LIMIT 1: Lấy 1 giá trị tiếp theo → 670 (lớn thứ 4)- Tương đương:
LIMIT 3, 1(cú pháp cũ: offset, count)
Mở rộng: Lấy top N: LIMIT N. Lấy từ thứ M đến thứ N: LIMIT M-1, N-M+1 hoặc LIMIT N-M+1 OFFSET M-1.