DB2分页
前言
示例
在mysql中,实现分页查询比较方便,只需要传入查询开始的条数start和要查询多少条数据即每页显示多少条数据limit就可以
db2和Oracle实现分页的方式类似,所需要的参数为要查询的数据开始的条数start,结尾的条数end,并且在sql语句中还需要设定row_number()(Oracle中为rownum)作为查询的辅助函数,此时要使用select语句的嵌套,嵌套在from子句中进行。
子句为:
select row_number() over ( order by date desc ) as r,e.* from emp e
其中
row_number() 作为人为的添加一列作为给每一条数据进行编号
over()中是实现排序的字段和方式,date是字段名,desc是方式,都可以修改,但是over()为必须写的,不写会报错
as r是为row_number()这个列取的一个别名
真正要分页查询的数据在外面的父句中进行实现
完整的语句为
select * from (
select row_number() over(ORDER BY date DESC) as r,e.*
from emp e
where e.name=’A’)
where r between 1 AND 5
此时的start为1,end为5,要注意between…and是>=1并且<=5实际上查出的是6条数据,所以要注意limit和end之间的处理,可以在action中进行,否则可能会出现每页显示条数不正确或者每一页的最后一条数据和下一页第一条数据重复等问题
还有一种方式是用>=和<=直接实现的
语句为
select * from (
select row_number() over(ORDER BY date DESC) as r,e.*
from emp e
where e.name=’A’ AND r<=5)
where r>0
此时显示的是1-5条数据,因为数据库是从1开始的。
1. db2分页查询sql
select * from (
select ROW_NUMBER() OVER(ORDER BY DOC_UUID DESC) AS ROWNUM, DOC_UUID, DOC_DISPATCHORG, DOC_SIGNER, DOC_TITLE from DT_DOCUMENT ) a
where ROWNUM > 20 and ROWNUM <=30
2.ROW_NUMBER()函数
增加行号,不排序
select * from ( select ROW_NUMBER() OVER() AS ROWNUM,t.* from DT_DOCUMENT t ) a
增加行号,按某列排序
select * from ( select ROW_NUMBER() OVER( ORDER BY DOC_UUID DESC ) AS ROWNUM,t.* from DT_DOCUMENT t ) a
最新文章
- 外接程序“VMDebugger”未能加载或者导致了异常。是否希望移除该外接程序?
- 通过参数传递,判断数字、字符串、list、tuple、词典等数据类型是否为可变数据对象
- js的执行顺序
- Android 回到底部和返回顶部实现
- 编绎openssl杂记(window)
- PM 时钟机制
- apache commons vfs 文件夹监控
- Create a commit using pygit2
- Hive学习之动态分区及HQL
- 讲故事的人写的谈判手册——Leo锦书64
- asp.net core mvc权限控制:权限控制介绍
- python:发送消息给微信企业号
- windows 下安装或者卸载memcache
- 京东饭粒捡漏V1.13
- 探秘JS的异步单线程
- salesforce lightning零基础学习(十二) 自定义Lookup组件的实现
- Beta周王者荣耀交流协会第四次Scrum会议
- 【iCore4 双核心板_ARM】例程十:RTC实时时钟实验——显示时间和日期
- Others-阿里专家强琦:流式计算的系统设计和实现
- 隐藏执行批处理bat文件
热门文章
- <;input type=";file";>; accept属性筛选文件类型
- SIGAI深度学习第三集 人工神经网络2
- java里getPath、 getAbsolutePath、getCanonicalPath的区别
- CF786C Till I Collapse 整体二分+根号分治
- bzoj 1996
- Poj 2976 Dropping tests(01分数规划 牛顿迭代)
- 数据结构实验之图论一:基于邻接矩阵的广度优先搜索遍历 (SDUT 2141)
- 求ascii 然后做运算
- 简单的switch插件
- uwsgi+nginx部署django项目