Sử dụng MIN(cot_so) kết hợp GROUP BY cot_nhom để tìm giá trị nhỏ nhất trong mỗi nhóm giá trị trùng lặp.
Ví dụ minh họa
Tạo bảng và chèn dữ liệu:
mysql> CREATE TABLE DemoTable1875 (Id INT AUTO_INCREMENT PRIMARY KEY, Class VARCHAR(20), Amount INT);
mysql> INSERT INTO DemoTable1875(Class,Amount) VALUES('X',750),('X',140),('X',450),('Y',6780),('Z',1350),('Z',2050);
Tìm Amount nhỏ nhất theo Class:
mysql> SELECT Class, MIN(Amount) FROM DemoTable1875 GROUP BY Class;
Kết quả:
+-------+-------------+ | Class | MIN(Amount) | +-------+-------------+ | X | 140 | | Y | 6780 | | Z | 1350 | +-------+-------------+
Mở rộng: Để lấy toàn bộ hàng (kèm Id) có Amount nhỏ nhất mỗi nhóm, dùng window function ROW_NUMBER() OVER (PARTITION BY Class ORDER BY Amount) (MySQL 8+).