Answers:
您可以这样做:
WITH abc AS( select
FROM ...)
, XYZ AS(select
From abc ....) /*This one uses "abc" multiple times*/
Select
From XYZ.... /*using abc, XYZ multiple times*/
正确的语法是-
with t1
as
(select * from tab1
where conditions...
),
t2
as
(select * from tab2
where conditions...
(you can access columns of t1 here as well)
)
select * from t1, t2
where t1.col1=t2.col2;
Aditya或其他人,您能否在示例中将t2与t1结合或匹配,即翻译为我的代码,
with t1 as (select * from AA where FIRSTNAME like 'Kermit'),
t2 as (select * from BB B join t1 on t1.FIELD1 = B.FIELD1)
我不清楚是否仅支持WHERE进行联接,或者第二个WITH实体内仅支持哪种联接方法。在某些示例中,WITH子句下面的select主体中有WHERE A = B。
在这些WITH声明之后,我得到的错误是在其余SQL主体中无法识别B中的标识符(字段名称)。因此,WITH语法似乎运行正常,但无法访问t2的结果。
abc
和xyz
子查询?我需要获取第一个子查询的结果,并在第二个子查询上使用它。