[MySQL] coalesce 関数で複数の値のうち NULL ではない最初の値を取得する

作成日: 2026年08月13日

coalesce() 関数を使うと、引数に渡した値のうち、最初に NULL ではない値を取得することができます。

select coalesce(null, null, "default value");

実行結果は下記のとおりです。

+----------------------------------------+
| coalesce(null, null, "default value")  |
+----------------------------------------+
| default value                          |
+----------------------------------------+
1 row in set (0.00 sec)

カラムの値が NULL のときに、代わりの値を表示したい場合にも使用できます。

select coalesce(name, "no name") from users;

name カラムが NULL の場合は no name が返され、NULL ではない場合は name カラムの値が返されます。

MySQL