(BLANK)데이터가 NULL일까?
SQL> WITH t AS (SELECT NULL AS c1 FROM dual
UNION ALL
SELECT ' ' FROM dual)
SELECT 'NULL'
,COUNT(*)
FROM t
WHERE c1 IS NULL
UNION ALL
SELECT 'NOT NULL'
,COUNT(*)
FROM t
WHERE c1 IS NOT NULL;
'NULL' COUNT(*)
---------- ---------
NULL 1
NOT NULL 1
- {BLANK)는 NULL이 아닌 NOT NULL 데이터(문자)
- (BLANK)은 문자 중 가장 작은 값으로 아스키 코드를 문자로 바꿔주는 CHR함수로 표현하면 CHR(0)
TRIM&NVL처리
SQL> WITH t AS (SELECT NULL AS c1 FROM dual
UNION ALL
SELECT ' ' FROM dual)
SELECT COUNT(*)
FROM t
WHERE nvl(TRIM(c1), 'ISNULL') = 'ISNULL';
COUNT(*)
--------
2
실사례 예제