PostgreSQLでは、LEAST()
関数は、任意の数の式のリストから最小値を返します。
LEAST()
関数はSQL標準には含まれていませんが、多くの主要なRDBMSがサポートする一般的な拡張機能です。
構文
LEAST(value [, ...])
これは基本的に、1つ以上の値を関数に渡すことができることを意味します。
例
簡単な例を次に示します。
SELECT LEAST( 5, 2, 9 );
結果:
2
一般的なデータ型
式はすべて、共通のデータ型に変換可能である必要があります。結果はこのタイプを使用します。
式を共通のデータ型に変換できない場合、エラーが発生します:
SELECT LEAST( 5, 'Two', 9 );
結果:
ERROR: invalid input syntax for type integer: "Two" LINE 1: SELECT LEAST( 5, 'Two', 9 ); ^
文字列
前の例は、文字列を使用できないことを示唆するものではありません。データ型を変換できないことを示すだけです。
実例を示すために、すべての引数が文字列である例を次に示します。
SELECT LEAST( 'Cat', 'Dog', 'Aardvark' );
結果:
Aardvark
日付
日付文字列の比較は次のとおりです:
SELECT LEAST(date '2030-01-01', date '2030-12-31');
結果:
2030-01-01
ヌル値
すべての式がnull
でない限り、null値は無視されます 。すべての式がnull
の場合 、次にnull
返されます:
\pset null '<null>'
SELECT
LEAST( 5, null, 9 ),
LEAST( null, null, null );
結果:
least | least -------+-------- 5 | <null>
デフォルトでは、psqlはnull値で空の文字列を返します。この例の最初の行では、null値を設定して<null>
を出力します。 これにより、nullの結果を簡単に確認できるようになります。
引数がありません
LEAST()
を呼び出す 引数がないとエラーが発生します:
SELECT LEAST();
結果:
ERROR: syntax error at or near ")" LINE 1: SELECT LEAST(); ^
ただし、エラーなしで1つの引数を渡すことができます:
SELECT LEAST( 1 );
結果:
1