PostgreSQLでは、MIN()
関数は、null以外の入力値の最小値を計算し、結果を返します。
この関数は、任意の数値、文字列、日付/時刻、列挙型、およびinet
で使用できます。 、interval
、money
、oid
、pg_lsn
、tid
、およびこれらのタイプの配列。
例
これがどのように機能するかを示す簡単な例です:
SELECT MIN(productprice)
FROM products;
結果:
9.99
この場合、productprice
products
の列です テーブル。
これをもう少し詳しく説明するために、表のスナップショットを次に示します。
+----------+---------------------------------+--------------+ | vendorid | productname | productprice | +----------+---------------------------------+--------------+ | 1001 | Left handed screwdriver | 25.99 | | 1001 | Right handed screwdriver | 25.99 | | 1001 | Long Weight (blue) | 14.75 | | 1001 | Long Weight (green) | 11.99 | | 1002 | Sledge Hammer | NULL | | 1003 | Chainsaw | 245.00 | | 1003 | Straw Dog Box | 55.99 | | 1004 | Bottomless Coffee Mugs (4 Pack) | 9.99 | +----------+---------------------------------+--------------+
productprice
が表示されます この例で最小値を取得した列。
私の実際のテーブルにはさらに多くの列が含まれていますが、これは列とテーブル内のコンテキストを示しています。
NULL
値
MIN()
関数はNULL
を無視します 値。上記のサンプルテーブルでは、スレッジハンマーにNULL
があります。 そのproductprice
列ですが、MIN()
では無視されました 結果。
フィルタリングされた結果
MIN()
関数は、クエリによって返された行を操作します。したがって、結果をフィルタリングすると、MIN()
の出力 それを反映します。
結果をフィルタリングしましょう:
SELECT MIN(productprice)
FROM products
WHERE vendorid = 1001;
結果:
11.99
日時の値
MIN()
関数は日時値で使用できます:
pets
というテーブルがあるとします。 次のデータを使用:
+-------+---------+------------+ | petid | petname | dob | +-------+---------+------------+ | 1 | Fluffy | 2020-11-20 | | 2 | Fetch | 2019-08-16 | | 3 | Scratch | 2018-10-01 | | 4 | Wag | 2020-03-15 | | 5 | Tweet | 2020-11-28 | | 6 | Fluffy | 2020-09-17 | | 7 | Bark | NULL | | 8 | Meow | NULL | +-------+---------+------------+
dob
から最小値を取得できます このような列:
SELECT MIN(dob)
FROM pets;
結果:
2018-10-01
キャラクターデータ
文字データ列で使用する場合、MIN()
照合シーケンスで最も低い値を見つけます。
例:
SELECT MIN(petname)
FROM pets;
結果:
Bark