'Except'에 해당되는 글 1건

  1. 2007.03.16 | Except 와 Except all 1

Except 와 Except all

DB2 | 2007. 3. 16. 09:08
Posted by 시반

무심코 minus를 썼다가 SQL error가 발생한 DB2 쿼리를 보고 깜짝 놀랐다.

물론 오라클과 다르기는 하지만 많은 부분 유사하게 사용해 왔던 터였고

솔직히 union 과 union all , minus 등은 표준SQL인줄 알았던 터라

DB2에서 당연하리라 생각했던 코드에서 에러가 났으니 ...

역시 난 무식한 개발자....

 

알아보니 DB2에서는 Except와 Except All 연산자를 제공하고 있었다

 

A Except B : A에는 있으나 B에는 없는 것들을 추려내는 것

                 즉 A와 B의 차집합을 구하는 것이고

A Except All B : Except와 동일한 기능을 하지만 공통부분을 제거하지 않는다

  (흐음 솔직히 그러면 A그대로가 아닌가? 굳이 Except All을 쓰는 이유는 머지?)

 

여하튼 Except라는 연산자는 A테이블의 모든행을 포함하면서 B테이블과 중복되는 부분을 제거하기 위해서 사용한다는 것이다

 

샘플)

SELECT EMP_NO,NAME FROM EMPLOYEE WHERE SALARY >10000

EXCEPT

SELECT EMP_NO,NAME FROM EMPLOYEE WHERE JOB = 'MANAGER' AND YEAR<8

--> 급여가 10000 이상인 직원이지만 직급이 관리자가 아니면서 8호봉이상인 직원의 사번과 이름을 추출하고자 할 때

 

'DB2' 카테고리의 다른 글

[본문스크랩] DB2 SQLSTATE 메시지  (0) 2007.02.23
SQL을 이용한 DB2 XML 데이터 쿼리  (0) 2007.02.14
DB2 Viper 시작하기  (0) 2007.02.14
DB2 INDEX 설계  (0) 2007.02.02
DB2에서 *.sql 파일을 읽어들여 실행하기  (0) 2006.12.31
 
블로그 이미지

시반

시반(詩伴)이란 함께 시를 짓는 벗이란 뜻을 가지고 있습니다. 함께 나눌수 있는 그런 공간이길 바라며...

카테고리

분류 전체보기 (233)
개발 이야기 (73)
WEB2.0 (57)
DB2 (24)
MySQL (6)
오라클 (26)
기타 (44)
취미 (0)
잡담 (2)