读书人

不知哪里写错了

发布时间: 2014-01-17 00:06:00 作者: rapoo

不知哪儿写错了



你试试,加上括号,也就是top 变量,那么必须要加上括号,比如:

declare @num int

set @num = 10

select top @num *
from sys.objects
/*
消息 102,级别 15,状态 1,第 7 行
'@num' 附近有语法错误。

*/


加上括号就对了,不会报错:
declare @num int

set @num = 10

select top (@num) *
from sys.objects

试了一下,确实加个括号,有时不需要加括号,有时又要加

这个是这样的,如果你只是用一个数字,那么可以不加括号,但是由于你上面的代码是用了变量的,也就是动态的,不是静态的数字,所以要加上括号哈,这个就是一个语法习惯。

读书人网 >SQL Server

热点推荐