cod*_*iac -1 sql sql-server-2008
我想在我的查询中使用多个CTE,但我无法使其正常工作.以下是我想要做的一个例子:
WITH tbl1 AS
(SELECT *
FROM tblStuff)
WITH tbl2 AS
(SELECT tbl1.fldStuff1 ...
FROM tbl1, tblStuff2)
SELECT *
FROM tbl2
Run Code Online (Sandbox Code Playgroud)
Aar*_*and 14
您只需指定WITH一次.然后,您可以列出以逗号分隔的其他CTE.例如:
WITH cte1 AS
(
...
),
cte2 AS
(
...
)
SELECT ...;
Run Code Online (Sandbox Code Playgroud)
WITH tbl1 AS
(SELECT *
FROM tblStuff),
tbl2 AS
(SELECT tbl1.fldStuff1, tbl1.fldStuff2, tblStuff2.fldStuff1, tblStuff2.fldStuff2
FROM tbl1, tblStuff2)
SELECT *
FROM tbl2
Run Code Online (Sandbox Code Playgroud)
当您使用多个CTE时,不需要额外的WITH,用逗号分隔.