Oracle SQL分页语句与性能
例如:
TRIP_BASEINFO 出差申请表共有1665条数据,使用sql developer进行性能分析。
--------------------------------------------------------------------
select * from
(
select rownum rn, t.* from (
select trip.* from TRIP_BASEINFO trip
) t where rownum <= 100
) t1 where t1.rn >= 90;
共用时间:cost = 11315
走全表扫描
----------------------------------------------------------------------
select trip1.* from
(
select rownum rn, t.to_id from (
select trip.to_id from TRIP_BASEINFO trip
) t where rownum <= 100
) t1 inner join TRIP_BASEINFO trip1 on t1.n_id = trip1.n_id
where t1.rn >= 90;
以上to_id为主键
共用时间:cost = 171
走主键索引
此种分页语句最佳。
-----------------------------------------------------------------------
select * from TRIP_BASEINFO where to_id in (
select to_id from (
select rownum rownum_, to_id from (
select to_ID from TRIP_BASEINFO
) where rownum <= 100
) where rownum_ >= 90
)
共用时间:cost = 172
使用了in
-------------------------------------------------------------------------
分享到:
相关推荐
NULL 博文链接:https://yan578351314.iteye.com/blog/911307
SQL Server 存储过程及Oracle SQL语句分页
环境: Oracle 9i 本例子使用简单的SQL语句实现Oracle数据库的分页动作。它没有使用PL/SQL语句(比如什么程序包、游标等),只是使用通用的、简单的SQL实现了...分页公式注释非常详细,是非常实用的Oracle分页语句!!
关于Oracle SQL语句分页问题:这里有一些实例,仅供大家下载来参考,如果有更好、更简便的方法,可以跟帖一起交流一下
用ORACLE的SQL语句实现多栏分页输出.RTF
oracle分页查询语句sql
3大数据库(Sql-Server,MySql和Oracle)的分页SQL语句实现
几条常见的数据库分页SQL 语句,针对oracle,sqlserver,mysql三种常见数据库的分页显示。
讲解oracle数据库操作数据表的分页过程,简单明了,可以直接套用,希望对大家学习oracle会有帮助
SQL Server 、MySQL 、Oracle数据库分页SQL语句
oracle 中没有像其他数据库那样用top来实现分页,但oracle提供了rownum 通过它也可以实现分页方法。
sql语句分页查询 自己总结下来的 希望能给大家一点帮助!
用ORACLE的SQL语句实现多栏分页输出.pdf
Oracle中实现分页查询的SQL命令 //curPage是当前页面,pageCount是每页显示行数 //rownum是伪列,相当于表中每一列的标识列(可以理解为行号),需要显式的提取出来并取一个别名
用SQL语句实现分页(Oracle版Sql Server版)
一些常用到的在oracle中的sql语句,也是我在网上找到的,分享给大家
oracle 数据库 sql server分页 jsp技术
分页方案二:(利用ID大于多少和SELECT TOP分页)效率最高,需要拼接SQL语句 分页方案一:(利用Not In和SELECT TOP分页) 效率次之,需要拼接SQL语句 分页方案三:(利用SQL的游标存储过程分页) 效率最差,但是最为...
小弟新手,第一次发自己的项目,整合了ssi,实现了ibatis连接oracle的分页,这个分页没有网上说的那么复杂,只是拼了sql分页语句就可以了
oracle 高效分页,使用SQL语句控制所查询出的行号