我想使用WITH语句"声明"什么是有效的多个TEMP表.我试图执行的查询是这样的:
WITH table_1 AS (
SELECT GENERATE_SERIES('2012-06-29', '2012-07-03', '1 day'::INTERVAL) AS date
)
WITH table_2 AS (
SELECT GENERATE_SERIES('2012-06-30', '2012-07-13', '1 day'::INTERVAL) AS date
)
SELECT * FROM table_1
WHERE date IN table_2
Run Code Online (Sandbox Code Playgroud)
我已阅读PostgreSQL文档,并研究使用多个WITH语句,但无法找到答案.
是否可以在单个查询中组合多个CTE arel?我正在寻找获得这样结果的方法:
WITH 'cte1' AS (
...
),
WITH RECURSIVE 'cte2' AS (
...
),
WITH 'cte3' AS (
...
)
SELECT ... FROM 'cte3' WHERE ...
Run Code Online (Sandbox Code Playgroud)
如你所见,我有一个递归CTE和两个非递归.