본문 바로가기

Study/OracleDB

27강 오라클 SQL set연산자(3)

728x90

-- set 연산자의 사용(INTERSECT, MINUS)

-- INTERSECT
-- 교집합과 INTERSECT
-- 두 개의 쿼리를 받고 결과를 모은 다음, 두 결과셋에 모두 존재하는 레코드만을 리턴한다.
select * from test1
intersect
select * from test2;

-- MINUS 연산자
-- 차집합과 MINUS
-- 첫번째 쿼리에서만 리턴되며, 두번째 쿼리에서는 리턴되지 않는 레코드만을 리턴한다.
select * from test1
minus
select * from test2;

--<학습정리>
-- SET 연산자 제한사항

-- SET 연산자로 묶여지는 SELECT 절에서 BLOB, CLOB, BFILE, VARRAY,
-- 중첩 테이블 타입인 컬럼 사용 불가

-- UNION, INTERSET, MINUS를 사용할 경우, SELECT 절에서 LONG 타입 컬럼 사용 불가.

-- FOR UPDATE 절 사용 불가

-- ORDER BY 절은 맨 마지막에서 한 번만 사용 가능. 서브쿼리 내에서는
-- ORDER BY 절 사용 불가

-- SET 연산자로 연결될 경우, 쿼리 결과는 가장 상위 SELECT 문의 컬럼을 기준으로
-- 데이터 타입, 컬럼명이 맞춰짐.

반응형