SQLite min()
hàm trả về giá trị không phải NULL tối thiểu từ tất cả các giá trị trong một nhóm.
Giá trị tối thiểu là giá trị sẽ xuất hiện đầu tiên trong truy vấn sử dụng ORDER BY
mệnh đề trên cùng một cột.
Ví dụ
Đây là một ví dụ để chứng minh.
SELECT min(Price) FROM Products;
Kết quả:
89.27
Đây là một truy vấn trả về tất cả các hàng trong bảng đó.
SELECT * FROM Products
ORDER BY Price;
Kết quả:
ProductId ProductName Price ---------- ----------- ---------- 5 Red Widget 3 Widget Open 89.27 4 Foobar Set 120.0 2 Widget Hold 139.5 1 Blue Widget 389.45
Lưu ý rằng hàng đầu tiên có giá trị NULL cho giá. min()
hàm bỏ qua điều đó và sử dụng giá trị không phải NULL tối thiểu.
Kết hợp Min () với Count ()
Dưới đây là một ví dụ kết hợp min()
hàm với count()
hàm để trả về số lượng tối thiểu.
SELECT min(AlbumCount)
FROM (SELECT ArtistId, count(Title) AS AlbumCount
FROM Album
GROUP BY ArtistId);
Kết quả:
1
Chúng tôi có thể xác minh điều này bằng cách chạy một truy vấn khác với ORDER BY
mệnh đề.
SELECT
ar.Name,
count(al.Title) AS AlbumCount
FROM Album al
INNER JOIN Artist ar
ON ar.ArtistId = al.ArtistId
GROUP BY ar.Name
ORDER BY AlbumCount ASC
LIMIT 3;
Kết quả:
Name AlbumCount ------------------------------ ---------- Aaron Copland & London Symphon 1 Aaron Goldberg 1 Academy of St. Martin in the F 1
Kết hợp với Max () và Avg ()
Đây là một ví dụ khác mà tôi thêm max()
và avg()
chức năng kết hợp.
SELECT
min(AlbumCount),
max(AlbumCount),
avg(AlbumCount)
FROM (SELECT ArtistId, count(Title) AS AlbumCount
FROM Album
GROUP BY ArtistId);
Kết quả:
min(AlbumCount) max(AlbumCount) avg(AlbumCount) --------------- --------------- ---------------- 1 21 1.70098039215686
Sử dụng Min () trên chuỗi
Như đã đề cập, min()
trả về giá trị sẽ được trả về đầu tiên bằng cách sử dụng ORDER BY
(giả sử nó đang sử dụng thứ tự tăng dần mặc định).
Khái niệm này cũng áp dụng cho chuỗi.
SELECT min(ProductName) FROM Products;
Kết quả:
Blue Widgets (6 Pack)
Chúng tôi có thể xác minh kết quả này bằng một truy vấn sử dụng ORDER BY
mệnh đề.
SELECT * FROM Products
ORDER BY ProductName;
Kết quả:
ProductId ProductName Price ---------- --------------------- ---------- 1 Blue Widgets (6 Pack) 389.45 4 Foobar Set 120.0 5 Red Widget 2 Widget Holder 139.5 3 Widget Opener 89.27