各种数据库(MYSQL、Oracle、DB2、SQL Server、PostgreSQL)的分页查询语句
2016-05-27 08:52
1061 查看
分页查询,就是将将过多的结果在有限的界面上分好多页来显示,这个是很多网站常用的功能,也是最基本的功能,今天简单总结一下。
分页以前听人们说都是一项技术,但是我觉的不尽然。我认为分页是将数据库的数据,利用一些特殊的sql语句来进行查询,显示理所应当显示的内容,更恰当的说可以是对SQL语句的灵活运用,对逻辑思维的简单使用。这里总结一些不同查询数据库的分页查询语句。
分页以前听人们说都是一项技术,但是我觉的不尽然。我认为分页是将数据库的数据,利用一些特殊的sql语句来进行查询,显示理所应当显示的内容,更恰当的说可以是对SQL语句的灵活运用,对逻辑思维的简单使用。这里总结一些不同查询数据库的分页查询语句。
1.oracle数据库分页 select * from (select a.*,rownum rc from 表名 where rownum<=endrow) a where a.rc>=startrow 2.DB2数据库分页 Select * from (select rownumber() over() as rc,a.* from (select * from 表名 order by 列名) as a) where rc between startrow and endrow 3.SQL Server 2000数据库分页 Select top pagesize * from 表名 where 列名 not in(select top pagesize*page 列名 from 表名 order by 列名) order by 列名 4.SQL Server 2005数据库分页 Select * from (select 列名,row_搜索number() over(order by 列名1) as 别名from 表名) as t where t.列名1>=startrow and t.列名1<=endrow 5.MySQL数据库分页 Select * from 表名 limit startrow,pagesize (Pagesize为每页显示的记录条数) 6.PostgreSQL数据库分页 Select * from 表名 limit pagesize,offset startrow (Pagesize为每页显示的记录条数.) 7.通用模式select * from ( select * from tb_student where sid not in( select sid from tb_student where rownum<=(currentPage-1)*pageSize) ) where rownum <=pageSize;
相关文章推荐
- Oracle 11gExtension Statistics and Expression Statistics
- Oracle 11g新特性:SQL Query Result Cache
- Oracle 11g新特性:多列统计信息(MultiColumn Statistics)
- Oracle 12C 新特性之临时undo控制
- 关于Oracle的几个问题及解决方案
- mysql与oracle在groupby语句上的细节差异
- 6.2、临时表--Oracle模式对象
- 6.1(续)索引、索引组织表--Oracle模式对象
- TimesTen可以运行在VMware上吗?
- oracle instance_name db_name db_unique_name 与监听注册
- ORACLE 多表关联 UPDATE 语句
- oracle-物化视图
- oracle将A表数据复制到B表中
- 【数据库】安装和配置Oracle客户端
- Oracle 对表设置并行度对执行计划的影响
- oracle数据库的常用命令
- oracle的新建用户表空间等
- oracle基本知识
- Tomcat 6.0 配置oracle数据库连接池
- Oracle 表空间