recursive
join
in recursive branch—use comma-join (,
)WITH RECURSIVE query_name AS (SELECT…)
The with recursive
clause allows a query to refer to its own output:
WITH RECURSIVE query_name (column_name, …) AS (
SELECT …
FROM …
UNION ALL
SELECT …
FROM query_name -- <= Note the self-reference here
) [, …]
SELECT …
FROM query_name
Tutorial: With
— Organize Complex Queries
Other forms: cycle … set … to … default … using
, with
, with
in subquery, with recursive
in subquery.
Product specific forms: connect by
.
The with recursive
clause is defined in ISO/IEC 9075-2:2023 §7.17 as part of optional feature T131, “Recursive query”.
You can’t catch up on 20 years of SQL evolution in one day. Subscribe the newsletter via E-Mail, Twitter or RSS to gradually catch up and to keep modern-sql.com on your radar.
The essence of SQL tuning in 200 pages
Buy now!
(paperback and/or PDF)
Paperback also available at Amazon.com.
Markus offers SQL training and consulting for developers working at companies of all sizes.
Learn more »