我想知道这是否可行.我有一个现有的查询,使用该WITH
子句将一些聚合数据应用于如下SELECT
查询:(大规模简化)
;WITH alias (y,z)
AS
(
SELECT y,z FROM tableb
)
SELECT y, z FROM alias
Run Code Online (Sandbox Code Playgroud)
我现在想把INSERT
这个查询的结果放到另一个表中.
我尝试过以下方法:
INSERT INTO tablea(a,b)
;WITH alias (y,z)
AS
(
SELECT y,z FROM tableb
)
SELECT y, z FROM alias
Run Code Online (Sandbox Code Playgroud)
但我得到错误:
';'附近的语法不正确.
所以我尝试了没有分号,但得到了错误:
关键字"WITH"附近的语法不正确.
关键字'with'附近的语法不正确.如果此语句是公用表表达式或xmlnamespaces子句,则必须以分号结束前一个语句.
我试图用不同的一些不同的语法做什么?
Tar*_*ryn 60
你需要在之后放置INSERT INTO
权利CTE
.所以代码将是:
;WITH alias (y,z)
AS
(
SELECT y,z FROM tableb
)
INSERT INTO tablea(a,b)
SELECT y, z
FROM alias
Run Code Online (Sandbox Code Playgroud)