C. Oracle

NOT EXISTS

sfeg 2017. 7. 2. 22:54


NOT EXISTS 사용

 A                                            

 ID   TEL
 e1   111
e2   222
 e3l   333

 

 B                                            

 ID   TEL
 e1   134
 e4   145
    151

 

select *

from A

where not exists ( select A.name from B where A.ID=B.ID);

                                         =(같은쿼리임)

select *

from A

where not exists ( select 'Y' from B where A.ID=B.ID);

 

=> exists는 존재를 확인하기 위한것이고 하나라도 존재하면 여부를 리턴합니다.

     존재하면 그 값이 컬럼값이던 'Y'던 '1'이던 컬럼이던(ID,TEL) 상관없이 존재여부사실을 확인한다

     그래서 A테이블을 select 하는데 조건은 A.ID와 B.ID 가 같은것을 제외한것을 보여줘라라는 뜻!!