Tóm tắt
Dùng ORDER BY cot_date, cot_time để sắp xếp trước theo ngày, sau đó theo giờ trong cùng ngày.
Ví dụ
1. Tạo bảng
CREATE TABLE OrderByDateThenTimeDemo (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
ShippingDate DATE,
ShippingTime TIME
);
2. Dữ liệu (2 hàng cùng ngày 2018-01-24, giờ khác nhau)
INSERT INTO OrderByDateThenTimeDemo (ShippingDate, ShippingTime) VALUES
('2018-01-24', '16:45:40'),
('2018-01-24', '15:30:35'),
('2018-04-25', '14:20:25'),
('2019-02-14', '18:07:55'),
('2019-01-31', '20:20:30');
3. Sắp xếp
SELECT * FROM OrderByDateThenTimeDemo ORDER BY ShippingDate, ShippingTime;
4. Kết quả
+----+--------------+--------------+
| Id | ShippingDate | ShippingTime |
+----+--------------+--------------+
| 2 | 2018-01-24 | 15:30:35 |
| 1 | 2018-01-24 | 16:45:40 |
| 3 | 2018-04-25 | 14:20:25 |
| 5 | 2019-01-31 | 20:20:30 |
| 4 | 2019-02-14 | 18:07:55 |
+----+--------------+--------------+
Ngày 2018-01-24: 15:30:35 đứng trước 16:45:40.
Mẹo
- Nếu cột là DATETIME duy nhất:
ORDER BY cot_datetimetự sắp cả ngày và giờ. - Tách DATE/TIME chỉ khi cần thiết (legacy, tối ưu index riêng).
- Index composite
(ShippingDate, ShippingTime)phục vụ ORDER BY tốt. - DESC cho một cột:
ORDER BY ShippingDate ASC, ShippingTime DESC.