IS [ NOT ] NULL

IS [ NOT ] NULL

표현식이 NULL인지, NULL이 아닌지를 판별하는 조건식 함수예요. WHERE 조건에서 NULL 값을 거르거나 걸러낼 때 기본적으로 쓰입니다.

출처: Snowflake SQL Reference

본문

<expr> IS [ NOT ] NULL

BOOLEAN을 반환해요.

  • IS NULL은 표현식이 NULL이면 TRUE, 그 외에는 FALSE예요.
  • IS NOT NULL은 표현식이 NULL이 아니면 TRUE, 그 외에는 FALSE예요.

예시 — 테이블을 만들어 데이터를 넣고, NULL 여부로 행을 걸러 볼게요.

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

col1이 NULL이 아닌 행을 반환해요.

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

col2가 NULL인 행도 반환할 수 있어요.

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

더 알아보기 (Learn more)