Jump to content

Common table expression

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Dfetter (talk | contribs) at 22:10, 3 July 2009. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

A Common Table Expression (in SQL) is a temporary named result set, derived from a simple query and defined within the execution scope of a SELECT, INSERT, UPDATE, or DELETE statement.

CTE can be thought of as an alternatives to derived tables (subquery), views, and inline user-defined functions.

Common Table Expressions

Common Table Expressions are supported by DB2, Microsoft SQL Server and PostgreSQL. Syntax:

WITH [RECURSIVE] with_query [, ...] SELECT...

with_query looks like

with_query_name [ (column_name [,...]) ] AS (SELECT ...)