的意思 ;在查询中

时间:2012-10-31 12:15:50

标签: sql-server sql-server-2008 sql-server-2008-r2

是什么意思;在查询结束时?

例如;有什么区别:

select 1
select 2

select 1;
select 2

4 个答案:

答案 0 :(得分:3)

“来自Ken Powers的SQLServerCentral.Com文章:

分号

分号字符是语句终止符。它是ANSI SQL-92标准的一部分,但从未在Transact-SQL中使用。实际上,可以在不遇到分号的情况下对T-SQL进行编码。

用法

有两种情况必须使用分号。第一种情况是使用公用表表达式(CTE),而CTE不是批处理中的第一个语句。第二个是您发出Service Broker语句的地方,Service Broker语句不是批处理中的第一个语句。“

来自When should I use semicolons in SQL Server?,这可能是您正在寻找的

又是“直接剪切和粘贴”

我认为这可能是堆栈溢出版本的一个笑话。

编辑:;也是在合并声明之后

答案 1 :(得分:2)

使用;是结束一个语句并启动另一个语句的正确方法。如果你不使用;你可能会得到意想不到的结果

答案 2 :(得分:1)

它表示Sql语句的结束。

答案 3 :(得分:1)

给出“必需”的情况清单总是容易遗漏。除了commont表表达式和SSB之外还有其他情况,解析器无法处理w / o分号,终止前一个语句,如THROWWITH XMLNAMESPACES,并且列表必然会增长。

正确的答案是:分号终止符必需,并且应该在编写新代码时始终放置。期。省略它们容忍,但是在official deprecation list

  

不推荐使用的功能:Transact-SQL不使用分号结束Transact-SQL语句   替换:使用分号(;)结束Transact-SQL语句。

忽略此弃用警告是您自己的危险。