with 실적 as (select 1 번호, 100 기준금액, 200 목표금액 from dual union all
select 2 번호, 100 기준금액, null 목표금액 from dual union all
select 3 번호, null 기준금액, 200 목표금액 from dual union all
select 4 번호, null 기준금액, null 목표금액 from dual )
--select 번호, nvl(기준금액, 0) from 실적 where 기준금액 = 목표금액; --> 출력값 없음
--select 번호 from 실적 where 기준금액 = 목표금액; --> 출력값 없음
--select 번호 from 실적 where 기준금액 > 목표금액; --> 출력값 없음
--select 번호 from 실적 where 기준금액 < 목표금액; --> 1
--select 번호 from 실적 where 기준금액 <> 목표금액; --> 1
위의 쿼리로 비교 연산자에 대한 테스트를 해보았습니다.
어떤 책에서 'null에 대한 비교 연산자 연산시 연산 결과는 null이다' 라는 문구를 보고 테스트 하였으나,
테스트 결과 제가 내린 결론은 'null에 대한 비교 연산자 연산시 연산 결과는 연산결과 제외다'
즉 연산에 참여 하지도 않고, 결과값도 출력 하지 않는 다는 결론을 내렸습니다.
해당 비교연산자(=, >, >=, <, <=, <>, !=)사용 시 입니다.
집계 연산과의 차이점은, 연산시 null값을 제외하고 나머지 값으로 연산해서 결과값이 나온다 였습니다.
제가 테스트하고 내린 결론이 맞는지 의견 부탁드리겠습니다.