SQL笔记---分页
随用随想,随用随记。
通过实际应用掌握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
SQL笔记---分页的更多相关文章
- SQL 笔记 By 华仔
-------------------------------------读书笔记------------------------------- 笔记1-徐 最常用的几种备份方法 笔记2-徐 收缩数据 ...
- SQL存储过程分页(通用的拼接SQL语句思路实现)
多表通用的SQL存储过程分页 案例一: USE [Community] GO /****** Object: StoredProcedure [dbo].[Common_PageList] Scrip ...
- SQL语句 分页实现
1 通过sql实现分页. select top 5 * from judgeorder where id not in (select top 10 id from judgeorder order ...
- SQL 数据分页查询
最近学习了一下SQL的分页查询,总结了以下几种方法. 首先建立了一个表,随意插入的一些测试数据,表结构和数据如下图: 现在假设我们要做的是每页5条数据,而现在我们要取第三页的数据.(数据太少,就每页5 ...
- sql语句分页多种方式ROW_NUMBER()OVER
sql语句分页多种方式ROW_NUMBER()OVER 摘自: http://www.cnblogs.com/CodingArt/articles/1692468.html 方式一 select to ...
- [.NET] SQL数据分页查询
[.NET] SQL数据分页查询 程序下载 范例下载:点此下载 原始码下载:点此下载 NuGet封装:点此下载 数据查询 开发系统时,使用C#执行SQL查询指令,就可以从SQL数据库里查询所需数据. ...
- SQL SERVER 分页方法
最近项目中需要在SQL SERVER中进行分页,需要编写分页查询语句.之前也写过一些关于分页查询的语句,但是性能不敢恭维.于是在业务时间,在微软社区Bing了一篇老外写的关于SQL SERVER分页的 ...
- 3种SQL语句分页写法
在开发中经常会使用到数据分页查询,一般的分页可以直接用SQL语句分页,当然也可以把分页写在存储过程里,下面是三种比较常用的SQL语句分页方法,下面以每页5条数据,查询第3页为例子: 第一种:使用not ...
- Oracle基础(五)pl/sql进阶(分页过程)
编写分页过程 通过pl/sql实现分页过程,再该过程中由简单到难一步步深入,目的在于通过该案例熟悉pl/sql的各种存储过程,包,游标.怎样在java中调用等内容的学习. 1.无返回值 ...
随机推荐
- BeanFactory 和 ApplicationContext的区别
今天在网上查资料无意中看到这一行代码 BeanFactory factory = new ClassPathXmlApplicationContext("applicationContext ...
- 第七章 二叉搜索树 (d3)AVL树:删除
- 23-新建maven 项目
1. 新建:Maven Project; 2. 配置项 bulid path, 添加tomcat: 3. 新建一个sources文件夹: srt/test/resourses 4.配置她的默认输出路径 ...
- 基本控件设置边角图片 drawableleft
btn.setCompoundDrawablesWithIntrinsicBounds(R.drawable.icon_galley_comment, 0, 0,0); 四个参数分别是左上右下四个方向 ...
- dddddddddddddddddd
PacificA: Replication in log-based distributed storage systemshttp://research.microsoft.com:8082/pub ...
- Nginx 分析access日志文件
Nginx Access Log日志统计分析常用命令 IP相关统计 统计IP访问量 awk '{print $1}' access.log | sort -n | uniq | wc -l 查看某一时 ...
- 洛谷 P2986 [USACO10MAR]伟大的奶牛聚集(树形动规)
题目描述 Bessie is planning the annual Great Cow Gathering for cows all across the country and, of cours ...
- jsp 页面 摘要, 要截取字符串 ,当时 字符串中包含 html标签,截取后无法显示
如题: 处理办法: 1. 使用struts标签 <s:property value ="#text.replaceAll('<[^>]+>','').substr ...
- sqoop 安装使用
安装配置: 1.将sqoop-1.4.4.tar.gz 上传到/usr/local/ 2.解压 tar -zxvf sqoop-1.4.4.tar.gz 3.配置 vim /etc/profile 在 ...
- fastjson解析List对象
List<String[]> body = JSON.parseObject(msg.getBody().toString(), new TypeToken<List<Stri ...