【Tableau】IFNULL関数とは?意味から使い方までわかりやすく解説!

今回はあまり知られていないが、覚えておくと実務で便利なIFNULL関数について解説したいと思う。

スポンサーリンク

IFNULL関数とは?

IFNULL関数は「対象のフィールドにNULLがあった場合のみ、指定した値を表示してくれる」関数だ。CASE関数やIIF関数と同じ論理関数の1つだが、あまり馴染みのない人も多いと思う。

サンプルスーパーストアのデータを使用した例で、IFNULL関数がどんな働きをするのかを確認してみたいと思う。

下記は注文に関するオーダーIdと返品があったオーダーidを表示しているが、「オーダーId(返品)」フィールドのデータにはNULLが多数表示されている。

IFNULL①

この「オーダーId(返品)」フィールドにIFNULL関数を下記のような計算式で使用すると、NULLの値のみが不明に切り替わる。

IFNULL関数②

このようにIFNULL関数は対象のフィールドの中で、値がなく、NULLと表示されてしまっているデータを指定の値に置き換えることが出来る。

例えば、ダッシュボードでフィルターをドロップダウンで表示させたときにNULLが表示されていると、あまりデータに詳しくない人から

「NULLって何なの?」

と質問を受けることがよくある。

そういう無駄なやり取りを減らすために「NULL」を「不明」などの値に置き換えてわかりやすくするためなどにIFNULL関数を利用したりする。

IFNULL関数の使用方法

IFNULL関数の使用方法は下記の通りだ。

IFNULL⑤

上図のように、IFNULL関数では「NULL以外の場合に表示させたいフィールド」を最初に記載し、「値がNULLの場合に表示させたいフィールドもしくは固定値」を2番目に記載する。

例えば、先ほどの例に挙げた注文に関するオーダーIdと返品があったオーダーidで見てみたいと思う。

IFNULL関数⑥

実際の表示では下記のようになる。

IFNULL関数⑦

上図を見ていただくとわかる通り、NULLの場合は値が「不明」に置き換わり、NULL以外の場合はそのままオーダーId(返品)のデータが表示されている。

IFNULL関数はこのようにNULLの値のみを他の表示にしたい時に非常に便利だ。

上記は[オーダーId(返品)]のデータ型が文字列だったため、値がNULLだった場合に表示させる値も文字列(”不明”や”0”)である必要があったが、対象のフィールドのデータ型が整数だった場合は下記のように表現することも可能だ。

IFNULL関数⑧

また、今までの例は全てNULLだった場合に「不明」や「0」などの固定値を表示させていたが、NULLだった場合にフィールドを指定することも可能だ。

例えば、[オーダーId(返品)]の値がNULLだった場合は[オーダーId]を表示させる、というような感じだ。

IFNULL関数の活用シーン

このようにIFNULL関数はNULLの値を他の値に置き換えたい時に非常に便利だ。

IFNULL関数の活用シーンは例えば、下記などが挙げられる。

  • ユーザーアンケートデータで性別がNULLの場合に「不明」と表示させる
  • 商品サブカテゴリの値にNULLがあれば、商品カテゴリの値を表示させる
  • 都道府県の値にNULLがあれば、”回答無し”と値を表示させる

NULLという表示だけではデータにあまり詳しくないユーザーがダッシュボード等を使う時にスムーズに使う妨げになることが多い。そのため、IFNULL関数等を使用してNULLという値をユーザーが意識しなくて済むように工夫するのは実務上は結構大事なポイントだ。

まとめ

IFNULL関数はISNULL関数などとも混同しやすいので、どういう場面でどういう関数を使用すると便利なのかを整理しておくと一層Tableauの活用が進むはずだ。

是非参考にしてみて欲しい。

スポンサーリンク
おすすめの記事