SYSTEM DEVELOPMENT

STUDY GROUP

NULL

●ドイツ語のゼロ
●データが存在しないこと
値がないのであれば「0」で良いのでは?
と思ってしまうのですが、プログラミングの場合は「0」も意味をもちます。
真=1
偽=0
値なし=NULL

四則演算の対象に NULL が含まれた場合、
1 + NULL = NULL
2 – NULL = NULL
3 * NULL = NULL
4 / NULL = NULL
NULL / 0 = NULL

というように、演算結果もNULLに化けてしまいます。
最後の例から分かるように、0除算の場合ですらエラーになりません。 SQL 関数の多くも、NULL に対しては NULL を返す仕様になっています。
この現象を「NULLの伝播(NULLs propagate)」と言うそうです。
NULLは極力使用しない方が良さそうですが、奥深そうです。もっと調べなければ…

menu