본문 바로가기
SQL

[SQL] WITH 구문

by ISLA! 2023. 3. 18.

WITH 구문

  • 정의
    • 하위 쿼리(subquery)나 중첩 쿼리(nested query) 대신 적용할 수 있는, 공통 테이블 표현식(Common Table Expression, CTE)을 정의하는 기능
  • 장점
    • 복잡한 쿼리를 더욱 가독성 좋게 작성할 수 있음
    • 공통 테이블 표현식을 재사용할 수 있으므로 코드 중복을 방지할 수 있음

 

예시

다음 쿼리는 "employees" 테이블에서 급여가 가장 높은 3명의 직원 정보를 출력함.

WITH 구문을 사용하여 공통 테이블 표현식 "highest_salaries"를 정의하고, 이를 메인 쿼리에서 참조함

WITH highest_salaries AS (
  SELECT *
  FROM employees
  ORDER BY salary DESC
  LIMIT 3
)
SELECT * FROM highest_salaries;
728x90