개인공부
데이터베이스 - 서브쿼리 본문
서브쿼리의 기본 개념
서브 쿼리는 하나의 SQL 문장의 절 안에 포함된 또 하나의 SELECT 문장입니다.
그렇기에 서브 쿼리를 포함하고 있는 쿼리문을 메인 쿼리, 포함된 또 하나의 쿼리를 서브 쿼리라 합니다.
서브 쿼리는 비교 연산자의 오른쪽에 기술해야 하고 반드시 괄호로 둘러쌓아야 합니다.
서브 쿼리는 메인 쿼리가 실행되기 이전에 한번만 실행이 됩니다.
서브쿼리의 위치
- SELECT , DELETE의 FROM절, WHERE 절
- INSERT 문장의 INTO절
- UPDATE 문장의 SET절, WHERE절
UNION
- 두 테이블의 결합을 나타내며, 결합시키는 두 테이블의 중복 데이터는 제거한다.
- SELECT 문장의 열의 개수가 반드시 같아야 한다.
- 결합시 반드시 같은 자료형이어야 한다.
- 중복을 제거하기 위해 SORT 함
- 자료가 많거나 INDEX가 되어있지 않는 칼럼을 대상으로 하면 쿼리시간이 길어질수 있음
1. SET연산자를 사용할 경우에는 SELECT 문장의 열의 개수가 반드시 같아야 한다.
SQL> SELECT 1, 3, 5
2 FROM DUAL
3 UNION
4 SELECT 2, 4, 6
5 FROM DUAL;
2. 결합시키는 두 테이블의 중복 데이터는 제거한다.
SQL> SELECT ENAME
2 FROM EMP
3 UNION
4 SELECT ENAME
5 FROM EMP;
3. 결합시 반드시 같은 자료형이어야 한다.
SQL> SELECT ENAME
2 FROM EMP
3 UNION
4 SELECT DEPTNO
5 FROM EMP;
결합시키는 두 테이블의 중복 데이터까지 반환한다.
SQL> SELECT ENAME
2 FROM EMP
3 UNION ALL
4 SELECT ENAME
5 FROM EMP;
'데이터베이스' 카테고리의 다른 글
테이블의 내용을 추가,수정,삭제하는 DML (0) | 2018.04.21 |
---|---|
테이블 구조 생성,변경 및 삭제하는 DDL (0) | 2018.04.21 |
데이터베이스 - 조인 (0) | 2018.04.19 |
데이터베이스 - 그룹 함수 (0) | 2018.04.18 |
데이터베이스 - SQL 주요 함수 (0) | 2018.04.16 |