TableauのIFNULL
関数は、指定した値がNULLだった場合に代替の値を返すシンプルかつ実用的な関数です。この記事では、基本構文と使い方、実務での活用パターンまでわかりやすく解説します。
目次
IFNULL関数とは?
IFNULL
関数には以下のような機能があります:
- 指定した値がNULL(ヌル)かどうかを判定
- NULLでなければそのままの値を返す
- NULLだった場合にはあらかじめ指定した代替値を返す
❗ **NULL(ヌル)とは「値が存在しない状態」**を意味します。数値の0とは違い、計算式では特殊な扱いになります。
例:
1 + 0 → 1
1 + NULL → NULL(計算不能)
IFNULL関数の構文
IFNULL([値], [代替値])
- 第1引数:NULLかどうかを調べる値(フィールドや計算)
- 第2引数:第1引数がNULLのときに返す代替値
使用例
IFNULL([出席状況], "欠席")
→ [出席状況] がNULLなら “欠席” を返し、NULLでなければ元の値を返します。
NULLのイメージ:出席簿の例
たとえば出席簿に以下のような記録があるとします:
名前記入欄
山田 出席
田中 (空欄)
高橋 出席
空欄はデータ上でNULLとして扱われます。
これをTableau上で補正するには、以下のようにします:
IFNULL([記入欄], "欠席")
実務での活用例
1. 欠損値を可視化・補完する
- 空欄や欠損の項目に “不明” や “未入力” を補う
IFNULL([電話番号], "未入力")
2. 数値フィールドのNULLを0に置き換える
IFNULL([売上], 0)
- 欠損値による集計エラーを防ぐ
- 棒グラフの空白やゼロ表示の整合性を保てる
3. LEFT JOIN後のデータ補完(Tableau Prepなど)
IFNULL([マスタ側の値], [既存の値])
- マスタに無い場合でも既存値を維持
- 複数列の更新処理で簡潔な式として活用できる
4. 多段階ネストで複数の候補を順にチェック
IFNULL([A], IFNULL([B], IFNULL([C], "未設定")))
- A → B → C → 最後に文字列 と段階的に代替値をチェック
✅ TIPS:ネストが深くなる場合は、計算フィールドを分けて段階的に構成すると保守性が上がります。
よくある間違いと補足
IF
文ではIS NULL
も使えますが、IFNULL
のほうが短く簡潔に書けるIFNULL
は数値・文字列の両方に対応(型制限がない)IFNULL([数値], 0)
やIFNULL([文字列], "不明")
など、汎用的に使える
関連関数との違い(Tableau NULL処理の比較)
関数名 | 特徴・用途 |
---|---|
IFNULL | NULLなら代替値を返す(最も基本的なNULL置換) |
ISNULL | 値がNULLかどうかをTRUE/FALSEで返す |
ZN | 数値型のNULLを0に変換(集計時のNULL防止) |
NVL | SQL互換関数。TableauではIFNULL と同義 |
まとめ
項目 | 内容 |
---|---|
関数名 | IFNULL |
戻り値 | NULLでなければ元の値、NULLなら代替値 |
対応データ型 | 数値・文字列ともに使用可 |
用途 | 欠損補完、JOIN補正、集計補強、空欄表示の統一 |
Tableau用語 | Tableau NULL処理、Tableau NULL置換、IFNULL活用 |
IFNULL
関数は、TableauにおけるNULL処理の基本です。
見落としがちな欠損データの可視化や、集計エラーの予防に不可欠な存在です。
正確なグラフと信頼性のあるデータ分析のために、ぜひ積極的に活用していきましょう。
Comment