SQL을 활용한 데이터 분석
집합
카테고리 : SQL을 활용한 데이터 분석
집합
SET 연산자의 종류
- UNION
- 합집합과 같은 개념
- SELECT 리스트의 컬럼의 개수, 순서, 타입이 같아야 한다
- SELECT 절에 나열된 모든 컬럼에 대해 두 테이블에 있는 내역 조회
- DISTINCT 역할 -> 한 테이블 기준 동일한 데이터는 1번만 조회된다
- UNION ALL
- 합집합과 같은 개념
- SELECT 리스트의 컬럼의 개수, 순서, 타입이 같아야 한다
- UNION과 다른 점은 한 테이블에 있는 동일 데이터가 모두 조회된다
- 합집합과 UNION/UNION ALL
- INTERSECT
- 교집합과 같은 개념
- SELECT 리스트의 컬럼의 개수, 순서, 타입이 같아야 한다
- MINUS
- 차집합과 같은 개념
- SELECT 리스트의 컬럼의 개수, 순서, 타입이 같아야 한다
SET 연산자의 제한 사항
- Oracle 8i 까지는 NULL과 숫자형, 날짜형 컬럼을 SET 연산자에서 같이 사용 못한다.
- Oracle 9i 부터 사용 가능 하다.
- SET 연산자로 묶여지는 SELECT 절에서 BLOB, CLOB, BFILE, VARRAY 중첩 테이블 타입 컬럼 사용 불가하다.
- UNION, INTERSECT, MINUS 를 사용할 경우, SELECT 절에서 LONG 타입 컬럼 사용 불가하다.
- FOR UPDATE 절 사용 불가하다.
- ORDER BY 절은 맨 마지막에 한 번만 사용 가능하다.
- 서브쿼리 내에서는 ORDER BY 절 사용 불가하다.
- SET 연산자로 연결될 경우, 쿼리 결과는 가장 상위 SELECT 문의 컬럼을 기준으로 데이터 타입, 컬럼명이 맞춰진다.