随用随想,随用随记。

通过实际应用掌握SQL语句。

一. SQL分页

1. 第一种方法:利用ID大于多少进行筛选

SELECT TOP 20
        *
FROM    dbo.WMS_Stock
WHERE   ( Rk_SkuCode > ( SELECT MAX(Rk_SkuCode)
                         FROM   ( SELECT TOP 40
                                            *
                                  FROM      dbo.WMS_Stock
                                  ORDER BY  Rk_SkuCode
                                ) t
                       ) )
ORDER BY dbo.WMS_Stock.Rk_SkuCode

注释:ID大于前40个中最大的一个,即排序后的41位。

2. 第二种方法:利用Not In,排除掉某些有序的ID

SELECT TOP 20
        *
FROM    dbo.WMS_Stock
WHERE   ( Pk_StockId NOT IN ( SELECT TOP 40
                                        Pk_StockId
                              FROM      dbo.WMS_Stock
                              ORDER BY  Pk_StockId ) )
ORDER BY dbo.WMS_Stock.Pk_StockId

注释:这种方法是根据排序的先后顺序进行检索,即不在前40行紧挨着之后的20行。

3. 第三种方法:利用存储过程及游标

create  procedure SqlPager
@sqlstr nvarchar(4000), --查询字符串
@currentpage int, --第N页
@pagesize int --每页行数
as
set nocount on
declare @P1 int, --P1是游标的id
 @rowcount int
exec sp_cursoropen @P1 output,@sqlstr,@scrollopt=1,@ccopt=1, @rowcount=@rowcount output
select ceiling(1.0*@rowcount/@pagesize) as 总页数--,@rowcount as 总行数,@currentpage as 当前页 
set @currentpage=(@currentpage-1)*@pagesize+1
exec sp_cursorfetch @P1,16,@currentpage,@pagesize 
exec sp_cursorclose @P1
set nocount off

参考引用:

http://www.itlearner.com/article/3740

最新文章

  1. Nginx 颁发自签证书
  2. 20151207Study
  3. HTML之:fieldset——一个不常用的HTML标签
  4. java多线程之CAS
  5. 【转】关于.net framework4.0以及4.5安装失败,“安装时发生严重错误”……
  6. IOS开发涉及有点概念&相关知识点
  7. vsftpd搭建及配置参数
  8. HDU 5700 区间交 线段树暴力
  9. MVC的Model层中的一些便签
  10. 连接到sql server 2008 TCP、IP出错
  11. 团队作业4——第一次项目冲刺(Alpha版本)6th day
  12. ReactNative布局样式总结
  13. HDU 3944 DP? [Lucas定理 诡异的预处理]
  14. 【一天一道LeetCode】#39. Combination Sum
  15. 和菜鸟一起学产品之用户体验设计UED
  16. 爬取页面InsecureRequestWarning: 警告解决笔记
  17. Webapi--Webapi 跨域链接
  18. Codeforces 919D Substring 【拓扑排序】+【DP】
  19. 全志A33 lichee 搭建Qt App开发环境编写helloworld
  20. 2018.11.05 bzoj2143: 飞飞侠(最短路)

热门文章

  1. 最短路径Dijkstra算法(邻接矩阵)
  2. 常用特殊符号的HTML代码(HTML字符实体)
  3. python之socket运用之传输大文件
  4. MongoDB安装(一)
  5. linux 版本号的查看
  6. DB2锁机制
  7. PAT 1082 射击比赛(20)(代码+思路)
  8. 使用 Php Artisan Tinker 来调试你的 Laravel
  9. Ubuntu 配置网卡信息
  10. axios 设置拦截器 全局设置带默认参数(发送 token 等)