minus 에 대한 위험(?)

2012. 6. 21. 09:56Oracle/Oracle Study

반응형

union 과 union all 의 차이점을 말하라하면 중복이 제거가 되느냐 되지 않느냐의 차이로 알고 있었다.

그러나 minus는?????


단순히 로우에 대한 빼기로만 알고 있었기에 무심코 사용했다.

반전...

결론은 minus를 하면 중복이 제거가 된 값들이 출력된다.


with car as

(

    select 'car' flag from dual union all

    select 'car' flag from dual union all

    select 'air' flag from dual union all

    select 'air' flag from dual union all

    select 'air' flag from dual union all

    select 'air' flag from dual union all

    select 'air' flag from dual union all

    select 'car' flag from dual union all

    select 'car' flag from dual

),

air as

(

    select 'car' flag from dual

)

select flag from car

minus

select flag from air

;


flag

-----

air


한건만이 출력된다...나에게 있어 굉장한 충격이었다.

반응형

'Oracle > Oracle Study' 카테고리의 다른 글

Windows Oracle 10g 설치  (0) 2012.09.23
characterset 변환  (0) 2012.07.17
Datafile resize에 대한 오해(?)  (0) 2012.01.20
sh 계정 생성  (0) 2011.12.26
10g에서 sys_connect_by_path 사용법  (0) 2011.12.01