我在cte表达式之后有一个insert语句,如下所示
WITH d as
(Select t1,t2 from test)
Insert into test2 (t1,t2) select t1,t2 from d
当我将此表达式作为查询运行时,此表达式正常工作,但我需要为此创建一个视图,当我在视图中使用它时,我得到错误“关键字'INSERT附近的语法不正确'”可能是什么问题?
答案 0 :(得分:4)
如果您要创建一个查询视图,您需要插入,请使用此命令:
CREATE VIEW
myview
AS
WITH d as
(
SELECT t1, t2
FROM test
)
SELECT t1, t2
FROM d
然后,您可以将该视图用作INSERT
的来源,就像使用任何其他表一样:
INSERT
INTO test2 (t1, t2)
SELECT *
FROM myview
答案 1 :(得分:1)
在RDBMS中,你有做某事
的陈述您可以将它们放入Stored Procedure
或Trigger
其他操作只读
您可以将其放入View
或Function
VIEW
是存储的SELECT
的名称。你不能改变任何东西......