3-값 로직 실전
SQL 은 진리값 셋: TRUE, FALSE, NULL ('모름'). NULL 포함 모든 연산이 NULL 평가 — NULL = NULL 포함. WHERE 가 조건 TRUE 인 행만 반환 → NULL 은 명시적으로 처리 안 하면 조용히 빠져.
함정
WHERE x = NULL절대 안 매치.IS NULL.WHERE x <> 'something'이 x 가 NULL 인 행 제외. 원하면OR x IS NULL.NOT IN (subquery)가 subquery 에 NULL 있으면 0 행.NOT EXISTS.- Aggregate (SUM, AVG, COUNT(col)) 가 NULL 조용히 스킵.
NULL 의도적 처리 도구
COALESCE(a, b, c)— 첫 non-NULL.NULLIF(a, b)— a = b 면 NULL (0 으로 나누기 회피에 좋음).IS DISTINCT FROM/IS NOT DISTINCT FROM— NULL-safe equality.