可用 DECLARE @i INT SET @i=3 EXEC('select top '+@i+' * from sysobjects')
我怎么记得TOP后面不能跟变量的。 其实可以使用ROWCOUNT。 DECLARE @INDEX INT SET @INDEX=100 SET ROWCOUNT @INDEX SELECT * FROM TBEVALUATE等同于SELECT TOP 100 * FROM TBEVALUATE SET ROWCOUNT 0 --最后一定要用这句话取消ROWCOUNT 仅供参考
------------联接服务器数据库 上 是SQL2000時 不支持這個的語法
可用
DECLARE @i INT
SET @i=3
EXEC('select top '+@i+' * from sysobjects')
其实可以使用ROWCOUNT。
DECLARE @INDEX INT
SET @INDEX=100
SET ROWCOUNT @INDEX
SELECT * FROM TBEVALUATE等同于SELECT TOP 100 * FROM TBEVALUATE
SET ROWCOUNT 0 --最后一定要用这句话取消ROWCOUNT
仅供参考
服务器的是2000, 2000下不支持 top()的