論理演算子と比較演算子以外にも条件を指定することが可能な演算子があります。今回は値が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テーブル
| Id | name | class | |
| 1 | 山田 | A | null |
| 2 | 田中 | B | tanaka@example.com |
| 3 | 佐藤 | A | sato@example.com |
SQL
SELECT
name
FROM
user
WHERE
class = 'A'
AND
mail IS NOT NULL;- A
- 山田佐藤
- 佐藤
- 田中
回答
3. 佐藤
1. 抽出されるのはclassではname
2. name”山田”のmailカラムはnull
4. 抽出されるのはクラスAのレコード
