eyecatch

作成日:2020-05-23 / 更新日:2020-05-23

データベースにてデータを扱う際、結果がNULLを表記されていることがあります。 このNULLとは何か、わかっていそうでわからないこの表記についてご紹介します。

# NULLとは

NULLは”ヌル”や”ナル”と読みます。 辞書でNULLを引くと”何もない”と出てきます。

ドイツ語では0のことをNULLと表現するらしく、これが区別しづらくしている原因なのかもしれません。

# データベースにおけるNULL

意味としてはまさに辞書のとおり「何もない」ということを表す際にNULLと表記されます。

SQLなどを使って、表を検索した際に表示されるNULLについては、その項目(タプル)が空欄であることを示しています。 Not available(NA)とも同等の意味合いになります。

NULLとなる場合は大きく2通りあるとされています。

# 未知や不明の場合

値がわからないケースがこれにあたります。 携帯電話番号を確認できておらず、その値が入力できていないときがこれにあたります。

# 非存在の場合

値が存在しないケースがこれにあたります。 携帯電話をもっていない人の携帯電話番号などがこれにあたります。

# NULLと0の違い

NULLは「なにもない(存在がない)」のですが、**0は「ゼロが存在」**します。

0自体が存在するという感覚が難しいかもしれませんが、秀逸な記事があったのでリンクを貼っておきます。 ねとらぼ

# NULLを使った計算

NULLはどう計算してもNULLになります。NULL自体が「何もない」ので、計算自体どうしようもないのです

  • NULL + 1 = NULL
  • NULL * 3 = NULL
  • NULL / 0 = NULL
  • not NULL = NULL

なお、NULLを含む比較を実施した場合はUNKNOWNとなります。

  • NULL = NULL -> UNKNOWN
  • NULL = 1 -> UNKNOWN