在单个 SQL 查询中连接多个 CTE
在单个查询中组合多个公共表表达式 (CTE) 是否可行?目标是获得类似于以下内容的结果:
WITH cte1 AS ( ... ), WITH RECURSIVE cte2 AS ( ... ), WITH cte3 AS ( ... ) SELECT ... FROM cte3 WHERE ...
此查询包含一个递归 CTE 和两个非递归 CTE。
解决方案:
在单个 CTE 中连接多个 CTE查询:
更新的查询:
WITH RECURSIVE cte1 AS (...) -- can still be non-recursive , cte2 AS (SELECT ... UNION ALL SELECT ...) -- recursive term , cte3 AS (...) SELECT ... FROM cte3 WHERE ...
要点:
以上是多个 CTE(包括递归 CTE)能否组合在单个 SQL 查询中?的详细内容。更多信息请关注PHP中文网其他相关文章!