nvl()

nvl()関数は、第1引数を評価してnullでない場合はその値を返し、nullの場合は第2引数の値を返します。

構文

nvl(VAL_EXPR, DEFAULT_EXPR)

パラメーター

VAL_EXPR
評価する対象の式です。評価結果がnullでない場合はその値を返します。
DEFAULT_EXPR
VAL_EXPRがnullの場合に返すデフォルト値の式です。

説明

nvl()関数はVAL_EXPRを評価します。結果がnullでない場合はその値を直ちに返します。結果がnullの場合はDEFAULT_EXPRを評価してその値を返します。

戻り値の型は、実際に返される値の型によって決まります。

エラーコード

該当なし

使用例

これらの使用例で参照するWEB_APACHE_SAMPLEテーブルを準備するには、クエリ実習用データを参照してください。

  1. refererフィールドが-または値がある場合はそのまま、ない場合はデフォルト値に置き換え

    table limit=5 WEB_APACHE_SAMPLE | eval result = nvl(referer, "(없음)") | fields referer, result
    
  2. 値がnullの場合 — デフォルト値を返す

    json "{'referer': null}" | eval result = nvl(referer, "(없음)")
    | # result: (없음)
    
  3. フィールドが存在しない場合 — デフォルト値を返す

    json "{}" | eval result = nvl(referer, "(없음)")
    | # result: (없음)
    
  4. 数値のデフォルト値を指定

    json "{'bytes': null}" | eval result = nvl(bytes, 0)
    | # result: 0
    

互換性

nvl()関数は、Sonar 4.0以前のバージョンから提供されています。