不管在任何一个开发中,分页几乎都是比不可少的。这里我们就说说分页的sql语句实现,在后面的几篇博客中在写一些关于分页插件的建立和应用。
一般上线的系统数据量都不小,在分页的时候对于大数据量的我们一般都会用多少数据从数据库中取出多少数据。不会说一次性把所有的数据都取出来,那样资源占用太大了性能也不行。
1.oracle的分页语句
select * from
(select t.*, rownum r
from table t
where rownum < M order by t.XXX desc) t2
where t2.r >= N;
rownum: 它是oracle给查询出来的结果加的一个伪列,该伪列是结果每返回一行给rownum赋个值,值为从1开始依次增加。取别名为r。
(具体详解和取值)
order by:对查询的结果进行排序。
M和N:N表示的是开始记录数,M-N表示该页的显示记录数
外查询的where必须使用rownum的别名
order by: 必须放在子查询里面。
rownum: 不能有前缀
2.mysql的分页语句
select * from table limit M,N;
M和N:从M条记录开始显示N条记录。
例:
(1)从记录20开始检索10条记录。(20-30)
select * from dept limit 20,10;
select * from
(select t.*, rownum r
from dept t
where rownum < 30 order by deptId desc ) t2
where t2.r >= 20
(2)先按一字段排序,然后去的20-30行
以外的数据
select * from
(select t.*, rownum r from
(select * from dept order by deptId) t
)
where r >30 or r < 20;
分享到:
相关推荐
3大数据库(Sql-Server,MySql和Oracle)的分页SQL语句实现
几条常见的数据库分页SQL 语句,针对oracle,sqlserver,mysql三种常见数据库的分页显示。
使用数据库特定SQL语句和存储过程真分页,用存储方式实现真分页,可以直接用的。
提供详细的sql语句,常用sql语句,sql语句的进阶过程
sql语句分页查询 自己总结下来的 希望能给大家一点帮助!
关于SQL Server SQL语句查询分页数据的解决方案
SQL Server 、MySQL 、Oracle数据库分页SQL语句
sqlserver分页查询语句;sqlserver分页查询语句;sqlserver分页查询语句;
用SQL实现分页显示
SqlServer数据库中的分页语句,SqlServer分页SQL语句特点:一次查询,数据库只返回一页的数据。而不是取出所有的数据。
分页算法中最全的,里面有分页的实例,又分页的sql语句,有分页的dll控件。绝对能满足你的分页要求。分页算法中最全的,里面有分页的实例,又分页的sql语句,有分页的dll控件。绝对能满足你的分页要求。
用标准的SQL语句实现查询记录分页.txt
使用SQL语句实现通用分页查询,支持模糊查询等。
c#\book\实现分页的sql语句
本例子使用简单的SQL语句实现Oracle数据库的分页动作。它没有使用PL/SQL语句(比如什么程序包、游标等),只是使用通用的、简单的SQL实现了数据库分页动作。 只要看懂了分页公式,那么这是一个通用的Oracle数据库...
通用的存储过程sql分页查询语句,节约您的时间....
用SQL语句实现分页(Oracle版Sql Server版)
三种数据库利用SQL语句进行高效果分页,分页
SQL分页语句 有关分页 SQL 的资料很多,有的使用存储过程,有的使用游标。本人不喜欢使用游标,我觉得它耗资、效率低;使用存储过程是个不错的选择,因为存储过程是经过预编译的,执行效率高,也更灵活。先看看单条 ...
用ORACLE的SQL语句实现多栏分页输出.RTF