U Have Website We have Cash
If you have website put our banner on it, make money for each visitor
dollarsincome.com

想想

女人一定要有勇气,无论是对爱情也好,对生活也好。如果什么事总是畏首畏尾,那么人生就白白流过了.

导航

Sqlserver Top n 解决办法

  由于sqlserver 2000 top 时,只支持常量(据说2005支持top函数)。要想直接实现top ?是肯定不可能的了,这里有一个办法仅供参考,不过有点复杂,希望路过的网友提供更好的办法.

CREATE PROCEDURE CustomersTop
(
    @TOP VARCHAR(25),  -- TOP 子句,也就是参数n
    @ORDERBY VARCHAR(500) -- ORDER BY 子句
)
AS

SET NOCOUNT ON
DECLARE @sSQL VARCHAR(500)

SELECT @sSQL = 'SELECT TOP ' + @TOP
SELECT @sSQL = @sSQL + ' * FROM Customers'
SELECT @sSQL = @sSQL + ' WHERE ' + @ORDERBY + ' = 1'

--PRINT @sSQL

EXEC(@sSQL)
SET NOCOUNT OFF

GO

posted on 2007-04-27 19:05  想想  阅读(1288)  评论(0编辑  收藏  举报