ホーム DoRuby SQL関数coalesceの使い方と読み方

SQL関数coalesceの使い方と読み方

この記事はアピリッツの技術ブログ「DoRuby」から移行した記事です。情報が古い可能性がありますのでご注意ください。

こんにちは。KBMJの佐藤です。

今回はSQLのcoalesceという関数の使い方と読み方について解説します。

coalesceとは何か?

coalesce は、与えられた引数のうち、NULLでない最初の引数を返してくれます。データを表示する目的で取り出すシチュエーションなどで、NULL値の代わりにデフォルト値を使っている場合に便利です。CASE や NULLIF などを用いても同様の効果が得られますが、coalesce() を使えば、より完結に記述することができます。といっても実際に使ってみないとイメージがわかないと思いますので、以下、実験してみます。

coalesce実験用テーブル・レコード

以下のようなテーブル・レコードを用意しました。

SELECT c1, c2, c3 FROM test1s;
 c1  |   c2   |   c3   
-----+--------+--------
 AAA | BBB    | CCC
 DDD | (null) | FFF
 GGG | HHH    | (null)
(3 rows)

coalesceを使ってみる

では先ほど用意したテーブルに対して、coalesceを使ったSELECT文を発行してみましょう。

SELECT c1, COALESCE(c2, 'QQQ') AS c2, COALESCE(c3, 'QQQ') AS c3 FROM test1s;
 c1  | c2  | c3  
-----+-----+-----
 AAA | BBB | CCC
 DDD | QQQ | FFF
 GGG | HHH | QQQ
(3 rows)

NULL だった場所が QQQ に置き換えられていますね。

coalesceの読み方

coalesceの読み方はカタカナで書くと「コウアレス」に近いようです。

ではまた。

記事を共有
モバイルバージョンを終了