Oracle 分页存储过程 几十万条记录
好长时间没写东东了,今天写了一个oracle的分页存储过程,贴出来与大家分享。
由于。net框架中的gridview等控件的分页功能太弱,所以大部分程序员都会自己写分页功能,而调用分页存储过程是必须的。
前台aspx页面不管是用下载的dll还是用自己写的用户控件,都能实现自己的功能,然而分页的存储过程就需要好好的考虑了,下边是我写的oracle的存储过程(参考sql server数据库的存储过程写成的),效率还可以,并附上调试的过程(调试环境:win2003、oracle 9i,调试工具:pl/sql):
--I/O消耗1071
select id,orgid,dj_date,khid,khcode,khname,feeid from fee_ysfy;
--493408
select count(id) from fee_ysfy;
--22.391执行完成(内外都有order by)
select id, orgid, dj_date, khid, khcode, khname, feeid
from (select rownum rn, t.id, orgid, dj_date, khid, khcode, khname, feeid
from fee_ysfy t
where 1 = 1
order by id desc)
where rn <= 45
and rn >= 30
order by id desc
--22.437(只有子查询有order by)
select id, orgid, dj_date, khid, khcode, khname, feeid
from (select rownum rn, t.id, orgid, dj_date, khid, khcode, khname, feeid
from fee_ysfy t
where 1 = 1
order by id desc)
where rn <= 45
and rn >= 30
--优化去掉order by0.891(去掉所有的order by)
select id, orgid, dj_date, khid, khcode, khname, feeid
from (select rownum rn, t.id, orgid, dj_date, khid, khcode, khname, feeid
from fee_ysfy t
where 1 = 1
)
where rn <= 45
and rn >= 30
--将order by放到外边0.828秒(把order by放到外边)
select id, orgid, dj_date, khid, khcode, khname, fee
相关文档:
目录
一、概述
二、硬件平台搭建
三、Redhat As4 update2安装配置
四、Oracle 10g安装配置
五、Red Hat Cluster Suite安装配置
六、系统切换测试
七、常用命令
一、概述
黄岛市开发区财政局本次采用两台IBM X3850-8664服务
器、
一台DS4300盘阵,平台采用Redhat As4 update2 结合cluster suite,部署Oracle
......
在数据库启动2小时后,可以通过以下SQL来测试数据库性能
1. 缓冲区命中率:
缓冲区命中率表示在不需要进行磁盘访问的情况下在内存结构中找到常用数据块的频率
select (1-(sum(decode(name, 'physical reads',value,0))/(sum(decode(name, 'db block gets',value,0))
......
oracle启动方式与命令参数汇总
本文主要是对oracle的启动方式和相关的命令参数进行一个汇总,用以加深印象。
Oracle的启动方式:
startup nomount
startup mount
startup open (startup的默认选项)
其他常用的参数:read only ,read write ,force,restrict
这些参数可以一起使用,比如 startup 与 startup open read ......
http://blog.csdn.net/mustbelove/archive/2007/04/17/1567836.aspx(转)
1 year=1*12 months
1 day=24
hours=24*(1*60mins)=24*60*(1*60 seconds)
1 week =7 days
注意:
黑色字体是 oracle
8i,9i都可以使用的函数,
蓝色字体是 Oracle
9i
新
增的部分。
请大家在使用时,注意版本限制。
add_mon ......
ORACLE 函数开发
1、建立函数的语法:
CREATE [OR REPLACE] FUNCTION 函数名
[ (arg1 [mode] datatype[,........])] --当指定参数数据类型时,不能指定其长度。mode值:IN、OUT、IN OUT,当mode 未指定时,表示为IN
RETURN datatype ......