PostgreSQL select で文字列を連結するときの注意点

select で文字列を連結するときの注意点

SELECTで文字列を連結するときに、Nullのカラムが1つでもあると全体がNullとなる。


それを回避するため、COALESCE関数(読み方はコウアレス?かな)を使ってNULLを空白に変換するようにする。

select (coalesce(a, '') || coalesce(b, '') || coalesce(c, '')) as abc from table;


COALESCE関数は、最初の null でないデータを返す。
coalesce(a, '')と書いた場合、aがnullであれば次の''を返すため、NULLが空白へ変換される。