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

OracleのNVL()関数

    Oracle Databaseでは、NVL() 関数を使用すると、null値を別の値に置き換えることができます。

    構文

    構文は次のようになります:

    NVL(expr1, expr2)

    expr1の場合 nullの場合、expr2 が返されます。それ以外の場合は、expr1 返されます。

    デモンストレーションの例を次に示します。

    SELECT NVL(null, 'Fish')
    FROM DUAL;

    結果:

    Fish

    そして、最初の引数がnull以外の値である場合は、次のようになります。

    SELECT NVL('Brocoli', 'Fish')
    FROM DUAL;

    結果:

    Brocoli

    無効な引数カウント

    引数を渡さずに関数を呼び出すと、エラーが発生します:

    SELECT NVL()
    FROM DUAL;

    結果:

    SQL Error: ORA-00909: invalid number of arguments
    00909. 00000 -  "invalid number of arguments"

    また、あまりにも多くの引数を渡すとエラーが発生します:

    SELECT NVL(1, 2, 3)
    FROM DUAL;

    結果:

    SQL Error: ORA-00909: invalid number of arguments
    00909. 00000 -  "invalid number of arguments"

    NVL2() 機能

    または、NVL2()を使用することもできます 関数。は、最初の引数がnullでない場合に返す別の値を指定できます。


    1. Postgresqlのwhere句でAlias列を使用する

    2. 2つのMySQLデータベースを比較する

    3. pyodbcはデータベースに接続できません

    4. 誤ってpostgresのデフォルトのスーパーユーザー権限を削除しました-元に戻すことはできますか?