반응형
WITH 절이란?
임시테이블 또는 가상 테이블의 개념.
반복되는 서브쿼리 블록을 하나의 WITH절 블록으로 만들어서 사용할 수 있다.
임시테이블을 만든다는 관점에서 VIEW와 비슷하지만 VIEW는 CREATE로 생성하여 DROP하기 전 까지 없어지지 않고 모든 테이블에서 사용하능 하지만 WITH절의 경우 한번 실행할 쿼리문 내 정의하여 해당 쿼리안에서만 실행된다.
WITH 절 사용법
--WITH절 생성
WITH emp_with AS
(
SELECT deptno, SUM(sal) AS sal
FROM emp
GROUP BY deptno
)
--WITH절 사용
SELECT a.deptno, b.name, c.sal
FROM emp_with a , dept b
WHERE a.deptno = b.deptno
위와같이 서브쿼리를 WITH절로 들어서 테이블처럼 사용할 수 있다.
WITH 이하에는 임의의 테이블명[emp_with]을 지정할 수 있고
AS 이하에 사용할 쿼리[SELECT~] 를 입력한다.
여러번 반복되는 서브쿼리를 WITH로 사용 시 쿼리성능을 높일 수 있다.
반응형
'Back-end > DataBase' 카테고리의 다른 글
[DBMS] Orange 단축키 정리 (0) | 2022.03.02 |
---|---|
[ORACLE] NVL 함수란? 쿼리 널처리 (3) | 2022.03.02 |
[DB2] WITH UR 이란? (0) | 2021.11.16 |
[DBMS] MySQL dump / import. 디비 덤프 및 임포트 하기 (0) | 2021.04.16 |
Oracle TO_CHAR / MySQL DATE_FORMAT (0) | 2021.01.18 |