MySQL 演算結果がnullであれば任意の値に置換する

MySQL 演算結果がnullであれば任意の値に置換する

MySQLで、演算結果がnullであれば任意の値に置換する手順を記述してます。

環境

  • OS ubuntu21.10
  • MySQL Ver 8.0.27-0ubuntu0.21.10.1 for Linux on x86_64 ((Ubuntu))
  • MySQL Workbench 8.0.27

手順

演算結果がnullであれば任意の値に置換するには、「IFNULL」を使用します。

IFNULL( 値1, 値1がnullのとき置換する値)

実際に「null」になる以下の演算結果を置換してみます。

SELECT 
1 + NULL,
1 - NULL

実行結果

この演算結果を、IFNULLを使って「0」に置換してみます。

SELECT 
IFNULL(1 + NULL,0),
IFNULL(1 - NULL,0),
IFNULL(1 + 1,0)

実行結果を確認すると、「null」であれば置換されていることが確認できます。

COALESCEを使用

COALESCEを使用しても、同様の結果を得ることが可能です。

SELECT 
COALESCE(1 + NULL,0),
COALESCE(1 - NULL,0),
COALESCE(1 + 1,0)

実行結果