🏧

[SQL]COALESCE関数 とは(備忘録)

2024/04/29に公開

1.COALESCE関数 とは

指定したカラムの値がNULLの場合、NULLを別の値に置換する際に使用します。
カラムは何個も指定が可能です。

COALESCE関数の書き方の例
/*
    カラム1の値がNULLの場合、カラム2の値に置換
    カラム1・2共にNULLの場合、末尾で指定した値に置換
*/
COALESCE(カラム1, カラム2, NULLを置換したい値)

2. サンプルプログラム

Sample.sql
CREATE TABLE result (
	id INT(2) AUTO_INCREMENT NOT NULL,
	name VARCHAR(10) NOT NULL,
	score INT(2),
	PRIMARY KEY (id)
);

INSERT INTO result (name, score)
VALUES ('鈴木', 80),('田中', 75),('大谷', 85),('佐藤', NULL);

SELECT
    name
    -- 0に置換
    ,COALESCE(score, 0) AS score
FROM result
;

実行結果

id name score
1 鈴木 80
2 田中 75
3 大谷 85
4 佐藤 0

3.その他

実行環境

Discussion