NULL

更新日:

用語解説

NULLは、データベースで値が未知、未入力、又はその項目が適用不能であることを表す特別なマーカーです。数値0、空文字列、空白、文字列「NULL」とは異なります。

■ 試験で押さえるポイント

  • NULLとの通常比較は真偽が決まらないUNKNOWNになるため、col = NULLではなくcol IS NULL、否定はIS NOT NULLで判定します。

  • SQLはTRUE、FALSE、UNKNOWNの三値論理を使い、WHERE句はTRUEの行だけを返すため、NULLを含む比較結果の行は通常除外されます。

  • COUNT(列)、SUM、AVGなど多くの集約関数はNULLを除外しますが、COUNT(*)は行自体を数えます。AVGでNULLを0とみなすのは誤りです。

  • 主キーにはNULLを許さず、UNIQUE制約で複数NULLを許すかはDBMSや指定によります。NOT INの候補にNULLがある場合もUNKNOWNに注意します。

■ 選択肢での判断ポイント

NULL=0又は空文字という誤答を除き、IS NULL、三値論理、集約関数の挙動を判断します。算術式にNULLが入ると通常結果もNULLです。

例: 得点が80、NULL、0の三行ならCOUNT(得点)=2、SUM(得点)=80、AVG(得点)=40で、NULLを0点として件数に含めません。

同じ分野の用語