SQLite min()
関数は、グループ内のすべての値からNULL以外の最小値を返します。
最小値は、ORDER BY
を使用するクエリで最初に表示される値です。 同じ列の句。
例
実例を示します。
SELECT min(Price) FROM Products;
結果:
89.27
これは、そのテーブルのすべての行を返すクエリです。
SELECT * FROM Products
ORDER BY Price;
結果:
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
最初の行の価格がNULL値であることに注意してください。 min()
関数はそれを無視し、NULL以外の最小値を使用します。
Min()とCount()を組み合わせる
min()
を組み合わせた例を次に示します。 count()
で関数 最小カウントを返す関数。
SELECT min(AlbumCount)
FROM (SELECT ArtistId, count(Title) AS AlbumCount
FROM Album
GROUP BY ArtistId);
結果:
1
これは、ORDER BY
を使用して別のクエリを実行することで確認できます。 条項。
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;
結果:
Name AlbumCount ------------------------------ ---------- Aaron Copland & London Symphon 1 Aaron Goldberg 1 Academy of St. Martin in the F 1
Max()およびAvg()と組み合わせる
max()
を追加する別の例を次に示します。 およびavg()
ミックスに機能します。
SELECT
min(AlbumCount),
max(AlbumCount),
avg(AlbumCount)
FROM (SELECT ArtistId, count(Title) AS AlbumCount
FROM Album
GROUP BY ArtistId);
結果:
min(AlbumCount) max(AlbumCount) avg(AlbumCount) --------------- --------------- ---------------- 1 21 1.70098039215686
文字列でのMin()の使用
前述のように、min()
ORDER BY
を使用して最初に返される値を返します 句(デフォルトの昇順を使用していると仮定)。
これと同じ概念が文字列にも当てはまります。
SELECT min(ProductName) FROM Products;
結果:
Blue Widgets (6 Pack)
この結果は、ORDER BY
を使用したクエリで確認できます。 条項。
SELECT * FROM Products
ORDER BY ProductName;
結果:
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