簡體   English   中英

在CTE表達式之后插入語句

[英]Insert statement after CTE expression

我在cte表達式后有一條插入語句,如下所示

WITH d as 
(Select t1,t2 from test)

Insert into test2 (t1,t2) select t1,t2 from d

當我將其作為查詢運行時,此表達式可以正常工作,但是我需要為此創建一個視圖,並且在視圖中使用它時,出現錯誤“關鍵字'INSERT'附近的語法不正確”,這可能是問題所在嗎?

如果要在您要插入的查詢上創建視圖,請使用以下命令:

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

在RDBMS中,您具有執行某些操作的語句

  • 插入
  • 刪除
  • 改變
  • 創造
  • ...

您可以將它們放入Stored ProcedureTrigger

其他操作是只讀的

  • 選擇

您可以將其放入ViewFunction

VIEW是存儲的SELECT的名稱。 你在那里什么都不能改變...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM