🖥️ IT, 컴퓨터/🏁 SQL・빅쿼리

[SQL] Common Table Expression (CTE)

김 홍시 2024. 2. 18.
반응형

CTE는 "Common Table Expression"의 약어로, 데이터베이스에서 쿼리의 일부분을 재사용하거나 복잡한 쿼리를 단순화하는 데 사용되는 임시 결과 집합입니다. CTE는 일시적인 뷰와 비슷한 개념으로 생각할 수 있으며, WITH 절을 사용하여 정의됩니다.

CTE는 주로 복잡한 쿼리를 작은 논리적 단위로 분해하여 가독성을 높이고 유지보수를 용이하게 합니다. 또한, CTE를 사용하면 동일한 결과 집합을 여러 번 참조할 수 있으므로 성능 향상에도 도움이 될 수 있습니다.

CTE는 임시 테이블로서 메모리에 저장되며, 쿼리의 실행이 완료되면 자동으로 삭제됩니다. 이러한 특성은 CTE를 재사용 가능하고 반복적으로 사용할 수 있는 강력한 도구로 만듭니다.

CTE의 구문은 간단하며, WITH 절을 사용하여 CTE의 이름과 필요한 필드를 정의한 다음, 이를 기반으로 메인 쿼리를 작성합니다. 이렇게 작성된 CTE는 메인 쿼리에서 일시적인 테이블처럼 참조될 수 있습니다.

예를 들어, 다음과 같은 CTE를 사용하여 "employees" 테이블에서 연봉이 특정 금액 이상인 직원들을 선택할 수 있습니다:

WITH high_paid_employees AS (
  SELECT * FROM employees WHERE salary > 50000
)
SELECT * FROM high_paid_employees;

이렇게 CTE를 사용하면 메인 쿼리에서 "high_paid_employees"라는 임시 테이블을 참조하여 필요한 작업을 수행할 수 있습니다.

반응형

댓글