在 PostgreSQL 中有LimitandOffset关键字可以很容易地对结果集进行分页。
Limit
Offset
SQL Server 的等效语法是什么?
相当于LIMITis SET ROWCOUNT,但如果你想要通用分页,最好写一个这样的查询:
LIMIT
SET ROWCOUNT
;WITH Results_CTE AS ( SELECT Col1, Col2, ..., ROW_NUMBER() OVER (ORDER BY SortCol1, SortCol2, ...) AS RowNum FROM Table WHERE <whatever> ) SELECT * FROM Results_CTE WHERE RowNum >= @Offset AND RowNum < @Offset + @Limit
这里的优点是偏移量和限制的参数化,以防您决定更改分页选项(或允许用户这样做)。
注意: 参数应该使用从@Offset一开始的索引,而不是正常的从零开始的索引。
@Offset