Jump to content

Common table expression

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Avonwyss (talk | contribs) at 13:01, 13 February 2010 (Added Oracle Database, since it fully supports CTEs since Release 11g). 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, Firebird [1], Microsoft SQL Server, Oracle and PostgreSQL. Syntax:

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

with_query looks like

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


References