PostgresqlでNVL(NULL置換)

Postgresqlでは、OracleやInformix等でNULL置換を行うNVL関数が存在しない。

代わりにCOALESCE(コアレス)関数が用意されている。

使い方というよりは綴りを忘れてしまうのでメモ。

なお、正確にはNVL関数は「該当する値がNULLの場合の代替値を返す」仕様に対して、CALESCEは「NULLでない自身の最初の引数を返す」仕様であり引数を列挙することができる。

上記の場合は、target_col1がNULLならtarget_col2、それもNULLならtarget_col3。それでもNULLなら” “、といった「IF-ELSE構文」のような挙動をする。

 

おすすめ

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください