sql-server - Azure 中的服务器端分页 (MS SQL)

标签 sql-server azure pagination

如何在 Azure 中的 SQL 查询中实现分页 具体来说,如何指定限制和偏移......

我应该每页显示 50 条记录,而数据库中有大约 4000 条记录

我正在为其编写一个 API,以使用 SQL 查询获取记录......如何在 MS SQL 查询中指定该记录

最佳答案

SELECT  *  FROM 
yourtable  order by someuniquecolumn
OFFSET 0 ROWS FETCH NEXT 50 ROWS ONLY ;

您还可以使用如下变量:

DECLARE 
  @pagenum  AS INT = 1,
  @pagesize AS INT = 10;

SELECT *
FROM yourtable
ORDER BY someuniquecolumns
OFFSET (@pagenum - 1) * @pagesize ROWS FETCH NEXT @pagesize ROWS ONLY;

因为,这获得了更多选票,添加了一些有关偏移量的更多信息,获取..

假设一个表有 1000 行,当您偏移 800 时,仅获取接下来的 10 行....Sql 服务器将读取前 800 行,然后只获取接下来的 10 行..但是第二种方法,您将进行精确的搜索,并具有良好的索引..

我从 Itzik Ben-Gan 的视频中观看了这么长一段视频,不过现在好像找不到了

引用文献:
http://sqlmag.com/blog/sql-server-2012-t-sql-glance-offsetfetch

关于sql-server - Azure 中的服务器端分页 (MS SQL),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38305910/

相关文章:

git - 如何在Azure DevOps中获取带有斜线的分支名称?

python - 无法通过请求获取过去的分页

sql-server - SQL Server 2005 上的 SSIS 2008?

sql-server - 将 SQL Server 查询转换为 MySQL 需要多长时间?

java - 从数据库中检索 java 中的完整日期

mysql - 如何比较 SQL Server 的表和 MySQL 的表

.net - 在 NAnt 中构建 Azure 部署包

Azure AD Enterprise 应用程序未显示 'automatic' 配置模式

php - 未定义的属性:Illuminate\Pagination\LengthAwarePaginator::$name

javascript - Angularjs ng-grid更改页面但丢失了selectedItems