select top 后面跟参数的方法

1、sql server2005以上可以直接加()就行。

DECLARE @number INT 
SELECT @number=2
SELECT TOP (@number) * FROM dbo.[User]


2、拼凑字符串

DECLARE @number INT,@sql VARCHAR(500)
SELECT @number=2
SET @sql='select top '+STR(@number)+' * from [User]'
EXEC (@sql)

3、利用rownumber

1 DECLARE @number INT
2 SELECT @number=2
3 ;
4 WITH t AS(
5 SELECT *,ROW_NUMBER() OVER(ORDER BY Id) AS rowNumber FROM [User])
6 SELECT UserName,UserPwd FROM t WHERE t.rowNumber<=@number

注意:with as语句在批处理中,需要加;

 

这是博客的第一篇文章,没什么技术性可言,弄这个博客是希望自己把今后工作上遇到的,学习到的知识记录下来,我希望有一天我也能成为一名大牛,希望自己的工作,生活能节节高升。



posted @ 2011-12-17 22:54  菜鸟非常  阅读(1002)  评论(0)    收藏  举报