개인공부

데이터베이스 - 서브쿼리 본문

데이터베이스

데이터베이스 - 서브쿼리

풀스택개발 2018. 4. 20. 01:00

서브쿼리의 기본 개념




서브 쿼리는 하나의 SQL 문장의 절 안에 포함된 또 하나의 SELECT 문장입니다.


그렇기에 서브 쿼리를 포함하고 있는 쿼리문을 메인 쿼리, 포함된 또 하나의 쿼리를 서브 쿼리라 합니다.


서브 쿼리는 비교 연산자의 오른쪽에 기술해야 하고 반드시 괄호로 둘러쌓아야 합니다.


서브 쿼리는 메인 쿼리가 실행되기 이전에 한번만 실행이 됩니다.



서브쿼리의 위치


- SELECT , DELETEFROM, 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;

 

Comments