Row Offset in SQL Server

后端 未结 16 2563
醉酒成梦
醉酒成梦 2020-11-22 05:53

Is there any way in SQL Server to get the results starting at a given offset? For example, in another type of SQL database, it\'s possible to do:

SELECT * FR         


        
16条回答
  •  北荒
    北荒 (楼主)
    2020-11-22 06:21

    I use this technique for pagination. I do not fetch all the rows. For example, if my page needs to display the top 100 rows I fetch only the 100 with where clause. The output of the SQL should have a unique key.

    The table has the following:

    ID, KeyId, Rank
    

    The same rank will be assigned for more than one KeyId.

    SQL is select top 2 * from Table1 where Rank >= @Rank and ID > @Id

    For the first time I pass 0 for both. The second time pass 1 & 14. 3rd time pass 2 and 6....

    The value of the 10th record Rank & Id is passed to the next

    11  21  1
    14  22  1
    7   11  1
    6   19  2
    12  31  2
    13  18  2
    

    This will have the least stress on the system

提交回复
热议问题