반응형
SET Operator
--구문
SELECT
FROM
UNION / UNION ALL / INTERSECT / EXCEPT
SELECT
FROM
- 개념
두개 이상의 쿼리 결과를 하나로 결합시키는 연산자
SELECT 에 들어가는 컬럼의 개수나 타입이 값이 같이야 된다.
UNION
결과에 대한 합집합 / 모든 중복된 행은 하나의 행으로만든다.
UNION ALL
결과에 대한 합집합 / 모든 중복된 행도 표시
INTERSECT
결과에 대한 교집합
MINUS
결과에 대한 차집합
만약에 컬럼수를 맞추기 힘들다면 이런식으로 더미(임시)컬럼을 넣을 수도 있다.
지금 이거 같은경우에 컬럼의 갯수는 맞지만 DEPT_ID는 문자열인 반면에 SALARY는 숫자형이다. 서로 타입이 달라 오류가 나고 있다.
이걸 TO_NUMBER로 형태를 바꿔 사용한다.
이런식으로 IF문처럼 쓸수도 있다. 그 결과 값을 합쳐서 나오게 한다.
3번째 컬럼은 리터널을 써서 WHERE 조건에 맞는 값들에 대해 컬럼에 대한 속성값으로 넣고 그 두개의 테이블을 합치는 쿼리다.
IN OPERART
SELECT
FROM
WHERE 컬럼 IN ('')
IN 을 WHERE 절에 넣어줘서 두가지 경우에 대한 WHERE 절을 만들어 넣어준다.
이 결과 값과 밑에 유니온을 해서 나온 결과 값이 같다.
[Database] SEP Operator(UNION,UNION ALL, INTERSECT,MINUS) & IN Operator사용법
반응형
'Base > Database' 카테고리의 다른 글
[Database] 테이블 생성(CREATE TABLE) 및 제약조건(CONSTRAINT) (0) | 2020.07.18 |
---|---|
[Database] Subquery(단일,다중) 사용법 (0) | 2020.07.17 |
[Database] Self JOIN 사용법 (ANSI 표준) (0) | 2020.07.17 |
[Database] INNER JOIN / OUTER JOIN 함수 사용법 및 차이(ORACLE & ANSI표준) (0) | 2020.07.16 |
[Database] ORDER BY 절,GROUP BY 절 함수 사용법 (Oracle SQL) (0) | 2020.07.16 |