簡體   English   中英

SQL Server:WITH AS使用不正確的語法錯誤

[英]SQL Server : WITH AS USING Incorrect Syntax Error

WITH t(num) AS (SELECT MAX(stok) FROM cd)

WITH y AS (SELECT cdno FROM cd,t WHERE cd.stok IN (t.num))

select * from y

我有這個代碼線程。 但是是不正確的,我有一些錯誤。 我不為什么請幫助。

當我與第1行一起使用並select * from t有效,但在這種情況下不起作用。

您不能像這樣再接兩個CTE(公用表表達式)。 如果要定義兩個 CTE,則需要使用以下語法:

WITH t(num) AS 
(
    SELECT MAX(stok) 
    FROM cd
), y AS 
(
    SELECT cdno 
    FROM cd, t 
    WHERE cd.stok IN (t.num)
)
SELECT * 
FROM y

你可以將多個 CTE的彼此中間用逗號隔開后,和剛剛離開了WITH關鍵字為后續的CTE的。

暫無
暫無

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

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