カテゴリ:

条件式関数

IS [ NOT ] NULL

式が NULL であるか、 NULL でないかを決定します。

構文

<expr> IS [ NOT ] NULL
Copy

戻り値

BOOLEAN trueまたはfalseを返します。

テーブルを作成してロードします。

CREATE OR REPLACE TABLE i (id NUMBER, col1 NUMBER, col2 NUMBER);
INSERT INTO i (id, col1, col2) VALUES 
    (1, 0, 5), 
    (2, 0, null), 
    (3, null, 5), 
    (4, null, null);
Copy

データを表示します。

SELECT * 
    FROM i
    ORDER BY id;
+----+------+------+
| ID | COL1 | COL2 |
|----+------+------|
|  1 |    0 |    5 |
|  2 |    0 | NULL |
|  3 | NULL |    5 |
|  4 | NULL | NULL |
+----+------+------+
Copy

IS NOT NULL を使用します:

SELECT * 
    FROM i 
    WHERE col1 IS NOT NULL
    ORDER BY id;
+----+------+------+
| ID | COL1 | COL2 |
|----+------+------|
|  1 |    0 |    5 |
|  2 |    0 | NULL |
+----+------+------+
Copy

IS NULL を使用します:

SELECT * 
    FROM i 
    WHERE col2 IS NULL
    ORDER BY id;
+----+------+------+
| ID | COL1 | COL2 |
|----+------+------|
|  2 |    0 | NULL |
|  4 | NULL | NULL |
+----+------+------+
Copy

IS NOT NULLIS NULL の組み合わせを使用します。

SELECT * 
    FROM i 
    WHERE col1 IS NOT NULL OR col2 IS NULL
    ORDER BY id;
+----+------+------+
| ID | COL1 | COL2 |
|----+------+------|
|  1 |    0 |    5 |
|  2 |    0 | NULL |
|  4 | NULL | NULL |
+----+------+------+
Copy