Verbinden mehrerer CTEs in einer einzigen SQL-Abfrage
Ist es möglich, mehrere Common Table Expressions (CTEs) in einer einzigen Abfrage zu kombinieren? Das Ziel besteht darin, ein Ergebnis ähnlich dem folgenden zu erzielen:
WITH cte1 AS ( ... ), WITH RECURSIVE cte2 AS ( ... ), WITH cte3 AS ( ... ) SELECT ... FROM cte3 WHERE ...
Diese Abfrage umfasst einen rekursiven CTE und zwei nicht rekursive CTEs.
Lösung:
Um mehrere CTEs in einer einzigen Abfrage zu verbinden:
Aktualisiert Abfrage:
WITH RECURSIVE cte1 AS (...) -- can still be non-recursive , cte2 AS (SELECT ... UNION ALL SELECT ...) -- recursive term , cte3 AS (...) SELECT ... FROM cte3 WHERE ...
Wichtige Punkte:
Das obige ist der detaillierte Inhalt vonKönnen mehrere CTEs, einschließlich rekursiver, in einer einzigen SQL-Abfrage kombiniert werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!