NULL値

広告

NULL値はデータが存在しないことを表す値です。大文字と小文字のどちらも使用できます。

NULLはデータが存在しないということなので、文字列における空文字''や数値における0とは異なります。

例として文字列の値を格納するカラムに対して空文字とNULLを格納してみます。

p3-1

ではカラムの値が空文字の値を取得してみます。

mysql> select * from strtest where str = '';

p3-2

空文字とNULLは異なりますので、NULLが格納されているデータは取得されません。

またNULLは他のどの値と比較しても偽となります。例えNULLをNULLと比較しても偽となります。次の例を見てください。

mysql> select * from strtest where str = NULL;

p3-3

カラムの値がNULLかどうかを調べるには「IS NULL」を使います。次のように入力します。

mysql> select * from strtest where str is NULL;

p3-4

また等しいかどうかには演算子として「=」を使いますが、NULLをNULLと比較した場合も真を返す演算子として<=>演算子を使うこともできます。

mysql> select * from strtest where str <=> NULL;

p3-5

( Written by Tatsuo Ikura )