sql >> データベース >  >> RDS >> PostgreSQL

PostgreSQLのLEAST()関数

    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

    1. Oracleは例外を除いてディレクトリからファイルを読み取りました

    2. SET TEXTSIZEがSQLServerで機能しませんか?これをチェックして。

    3. Oracleから各グループの最新の行を選択します

    4. PostgreSQLはテーブル(フラグメント)の透過的な圧縮をサポートしていますか?