C140 IS NULL演算子 / IS NOT NULL演算子

論理演算子と比較演算子以外にも条件を指定することが可能な演算子があります。今回は値がNULLか否かを判断する際に用いるIS NULL演算子とIS NOT NULL演算子について紹介します。

IS NULL演算子 / IS NOT NULL演算子の書き方

IS NULL演算子

IS NULL演算子は、値がNULLかどうかを判定する際に利用する演算子です。NULLとは何のデータも含まれない状態のことをいいます。

下記、WHERE句と合わせた使用例になります。

SQL
SELECT 
  カラム名
FROM
  テーブル名
WHERE
  カラム名 IS NULL;

IS NOT NULL演算子

IS NOT NULL演算子は、値がNULL値以外かどうかを判定する際に利用する演算子です。つまり、何かしらのデータが入っているカラムを指定します。

SQL
SELECT 
  カラム名
FROM
  テーブル名
WHERE
  カラム名 IS NOT NULL;

例題

userテーブルに下記SQLを用いた際に抽出されるデータはどれか

userテーブル

Idnameclassmail
1山田Anull
2田中Btanaka@example.com
3佐藤Asato@example.com

SQL
SELECT 
  name 
FROM 
  user 
WHERE 
  class = 'A'
AND 
  mail IS NOT NULL;
  1. A
  2. 山田佐藤
  3. 佐藤
  4. 田中
回答

3. 佐藤

1. 抽出されるのはclassではname
2. name”山田”のmailカラムはnull
4. 抽出されるのはクラスAのレコード

---