Database - Oracle DB/2주차(Database - Oracle DB)

[SQL] DB 스터디 - 16

김야키 2019. 1. 10. 09:16


WITH절


1. WITH절 이란

- Oracle DB 10g부터 지원되는 SQL질의문

- 하나의 쿼리 내에서 반복되는 쿼리 집합을 미리 정의하여 임시 테이블에 저장된 데이터로 사용

- 문장을 작성 할 때 동일한 문장이 계속 사용되는 경우에 사용

- SELECT 명령문보다 먼저 시행 됨, 별칭이 필요 함

- WITH절에 있는 SELECT문에서 나온 결과는 임시 테이블에 저장되어 있음

- 임시 테이블이 만들어 지기 때문에 디스크 내에 저장공간을 차지 하고 있음

- JOIN에서는 잘 사용되지 않음

- 행의 개수를 줄일 때 사용

예)

->

-- 부서별 급여의 합을 계산 후 평균을 계산할 때

WITH sum_sal AS (

SELECT deptno, SUM(sal) AS SUM

FROM emp

GROUP BY deptno )

SELECT *

FROM sum_sal

WHERE sum > ( 

SELECT AVG(sum) FROM sum_sal    ) ;




'Database - Oracle DB > 2주차(Database - Oracle DB)' 카테고리의 다른 글

[SQL] DB 스터디 - 17  (0) 2019.01.10
[SQL] Advanced SQL - TOP-n 질의 활용  (0) 2019.01.09
[SQL] DB 스터디 - 15  (0) 2019.01.09
[SQL] DB 스터디 - 14  (0) 2019.01.09
[SQL] DB 스터디 - 13  (0) 2019.01.09