是否需要放';' CTE前面的分号

时间:2010-12-22 06:07:57

标签: sql tsql

需要放';' CTE前面有分号?任何人都有这个想法吗?

感谢您的重播.........

1 个答案:

答案 0 :(得分:4)

如果前一个语句未在;

中结束,则

我个人并不是因为我在发言结束时使用;

当我在这里回答时,我是为了清楚起见。

“WITH”本身可以在很多地方使用,因此需要;才能使解析器确定WITH context correctly (CTE link)

一个人为的例子:语句分隔符在哪里?

ALTER DATABASE foo SET OFFLINE WITH ROLLBACK IMMEDIATE SELECT * FROM bar

ALTER DATABASE foo SET OFFLINE WITH MYCTE AS (SELECT * FROM bar) SELECT * FROM MYCTE

同样适用于DROP ASSEMBLYEXECUTERECONFIGUREMERGE