쿼리를 짜다가 모르고 넘어갈 수 있는 오류들이 있습니다
1. 값 비교 - NULL이 아닌값과 NULL 값 비교
SELECT
FROM TABLE
WHERE 1=1
AND A <> B -- 오류발생
AND A <> NVL(B,'ABC') --
A 컬럼과 B컬럼을 비교할때 B 컬럼에 NULL값이 있으면 정확한 비교가 되지않습니다
'AAA' <> NULL 해보시면 분명 다른값인데 비교가 되지 않습니다
이럴 때는 NVL을 통해 NULL 값을 대체해서 비교를 해야 정확합니다
반응형
댓글