以下是SQL以及执行计划: SQL Statement from editor:
select a.putmeddetailid_chr
from t_bih_opr_putmeddetail a
where (a.create_dat between timestamp '2009-6-4 00:00:00'
and timestamp '2009-6-4 23:59:59'
)
and a.medstoreid_chr = '0000066'
------------------------------------------------------------
Statement Id=4203132 Type=
Cost=2.64022111505165E-308 TimeStamp=04-06-09::15::28:22
(1) SELECT STATEMENT ALL_ROWS
Est. Rows: 589 Cost: 3,837
(2) TABLE TABLE ACCESS FULL ICARE.T_BIH_OPR_PUTMEDDETAIL [Analyzed]
(2) Blocks: 19,421 Est. Rows: 589 of 371,198 Cost: 3,837
Tablespace: ICARE_IDXt_bih_opr_putmeddetail.create_dat已经建立索引了,时间范围一天,没有数据,却是全表的扫描。怎么解决。
select a.putmeddetailid_chr
from t_bih_opr_putmeddetail a
where (a.create_dat between timestamp '2009-6-4 00:00:00'
and timestamp '2009-6-4 23:59:59'
)
and a.medstoreid_chr = '0000066'
------------------------------------------------------------
Statement Id=4203132 Type=
Cost=2.64022111505165E-308 TimeStamp=04-06-09::15::28:22
(1) SELECT STATEMENT ALL_ROWS
Est. Rows: 589 Cost: 3,837
(2) TABLE TABLE ACCESS FULL ICARE.T_BIH_OPR_PUTMEDDETAIL [Analyzed]
(2) Blocks: 19,421 Est. Rows: 589 of 371,198 Cost: 3,837
Tablespace: ICARE_IDXt_bih_opr_putmeddetail.create_dat已经建立索引了,时间范围一天,没有数据,却是全表的扫描。怎么解决。
解决方案 »
- 创建包-函数 一直报错--Error(13,1):PLS-00103:在创建‘create’...... pr
- 請問pl/sql 中產生隨機數的函數是什么﹖
- oracle导入问题,请各位帮忙!
- 请教各位!急!很菜的问题
- oracle server删除不当,无法安装client
- 关于触发器的又一问迫切等待中............................
- 如何通过PB来查看oracle数据库中表的内容
- windows 2000 server下能否安装oracle734
- 数据备份的问题
- 怎么写日期类型的sql语句,谢谢
- oracle 进程 和 线程
- Oralce 存储过程里怎么调用函数 谢谢!!
==================================================================
6 百行数据,最多也就几个 data block,不用索引可能会更快。
你这种处理方式导致oracle先要对表中的记录进行隐式转换成timestamp类型, 所以索引无效.
将between timestamp '2009-6-4 00:00:00' and ...
换成 between to_date('2009-6-4 00:00:00' ,'YYYYMMDD')试试