フィア・オブ・ジ・アンノウン
苗字と名前を結合して表示したい
code:sql
select 'first_name' + ' ' + 'last_name' as fullname;
table:ㅤ
fullname
first_name last_name
ミドルネーム列を新たに追加
苗字とミドルネームと名前を結合して表示したい
code:sql
select 'first_name' + ' ' + 'middle_name' + ' ' + 'last_name' as fullname;
table:ㅤ
fullname
first_name middle_name last_name
新たに追加したミドルネーム列に初期化忘れのレコードがあった
ミドルネームがnullの人が発生した
ミドルネーム初期化時、ミドルネームがない人の処理が漏れたのかもしれない
ミドルネームがnullの人の名前を結合すると名前がnullになってしまう
code:sql
select 'first_name' + ' ' + null + ' ' + 'last_name' as fullname;
table:ㅤ
fullname
NULL
関連
NULLをすべて何らかの値に置き換えるとよいのか?
NULLは「欠けているもの」を補うと考えて用いる
NULLの伝搬
3値論理の真理表
ただし、DBによっては「空の文字列との結合」と見なして処理してくれるものもある
逆に困る時もある