Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Sắp xếp ngày và lấy bản ghi thứ 2 trong MySQL với LIMIT offset

Tạo bảng đơn hàng

mysql> CREATE TABLE DemoTable1417 (
    -> CustomerId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> CustomerName VARCHAR(20),
    -> ShippingDate DATE
    -> );
INSERT INTO DemoTable1417(CustomerName, ShippingDate) VALUES
('Chris','2019-01-21'),('David','2018-12-01'),('Carol','2019-09-28'),('Sam','2019-08-29');

Dữ liệu

mysql> SELECT * FROM DemoTable1417;
+------------+--------------+--------------+
| CustomerId | CustomerName | ShippingDate |
+------------+--------------+--------------+
| 1          | Chris        | 2019-01-21   |
| 2          | David        | 2018-12-01   |
| 3          | Carol        | 2019-09-28   |
| 4          | Sam          | 2019-08-29   |
+------------+--------------+--------------+

Truy vấn: ORDER BY CustomerId, LIMIT 2,1 (bỏ 2 hàng đầu, lấy 1 hàng)

mysql> SELECT CustomerName, ShippingDate
    -> FROM DemoTable1417
    -> ORDER BY CustomerId
    -> LIMIT 2, 1;

Kết quả: Hàng thứ 3 (Carol)

+--------------+--------------+
| CustomerName | ShippingDate |
+--------------+--------------+
| Carol        | 2019-09-28   |
+--------------+--------------+

Giải thích: LIMIT offset, row_count. offset=2 bỏ qua 2 hàng đầu (0-indexed). Để lấy hàng thứ N: LIMIT N-1, 1.