是否可以获得10到20行的值?如果是这样的话?
答案 0 :(得分:1)
如果您使用的是SQL Server 2005或更高版本,请查看ROW_NUMBER函数:http://msdn.microsoft.com/en-us/library/ms186734.aspx
答案 1 :(得分:0)
一种方法是做类似以下的事情......
SELECT * FROM (
SELECT TOP x * FROM (
SELECT TOP y fields
FROM table
WHERE conditions
ORDER BY table.field ASC) as foo
ORDER by field DESC) as bar
ORDER by field ASC
x是您想要返回的行数,y是x + offset。
http://josephlindsay.com/archives/2005/05/27/paging-results-in-ms-sql-server/
答案 2 :(得分:0)
嘿,关于row_number()的关于joelt的asnwer。我做的。 它是这样的:
SELECT allianceId,position,points from(选择ROW_NUMBER()over(Order by Points DESC)作为position,points,allianceId from Alliance)as somethingx where position> = @alliancePosition-5 and position< = @alliancePosition + 5;