博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQL Server 2012 新的分页方法
阅读量:5030 次
发布时间:2019-06-12

本文共 691 字,大约阅读时间需要 2 分钟。

数据库环境:

  SQL Server 2012

使用到的关键字:

  offsetfetchnextrows

简单示例:

declare @pageSize int,@currentPage intset @pageSize = 5set @currentPage = 2select * from AnalysisCodeorder by Id offset (@currentPage-1)*@pageSize rows fetch next @pageSize rows only;

这句SQL的意思就是:跳过 (@currentPage-1)*@pageSize 条记录,查询之后的 @pageSize 条记录。这种分页够简单!查阅相关资料表示性能也比row_number() over(),双order要好。

使用 OFFSET-FETCH 中的限制:

  • ORDER BY 是使用 OFFSET 和 FETCH 子句所必需的。
  • OFFSET 子句必须与 FETCH 一起使用。永远不能使用 ORDER BY … FETCH。
  • TOP 不能在同一个查询表达式中与 OFFSET 和 FETCH 一起使用。
  • OFFSET/FETCH 行计数表达式可以是将返回整数值的任何算术、常量或参数表达式。该行计数表达式不支持标量子查询。

参考MSDN:

http://technet.microsoft.com/zh-cn/library/gg699618.aspx

转载于:https://www.cnblogs.com/jRoger/articles/3375412.html

你可能感兴趣的文章
触发器简介
查看>>
JAVA反射机制的学习
查看>>
mysql - rollup 使用
查看>>
洛谷 - P1443 - 马的遍历 - bfs
查看>>
大数的阶乘
查看>>
Redhat Enterprise server linux 5安装Telnet
查看>>
python解决处理中文的问题
查看>>
ubuntu开启SSH服务
查看>>
关于SpringMVC返回数据带斜杠字符串问题之解决方案
查看>>
Docker安装MySQL并配置远程访问
查看>>
Windowns下code: command not found
查看>>
VC调试方法大全
查看>>
jenkins 多用户同时触发构建—简单实用
查看>>
Chrome系列 Failed to load resource: net::ERR_CACHE_MISS
查看>>
出现函数重载错误call of overloaded ‘printfSth(double)’ is ambiguous
查看>>
SDUT 1941-Friday the Thirteenth(水)
查看>>
java API连接虚拟机上的hbase
查看>>
c#扩展出MapReduce方法
查看>>
C++在命名空间中声明类和成员函数
查看>>
Cookie工具类 - CookieUtil.java
查看>>