现在在做一个GPS项目 oralce中记录一个表 现在历史记录有3亿多条记录
我给这个表加了按日期的索引
但是查询的时候响应速度极慢查询sql语句 select * from GPS_INFO_HISTORY WHERE dt >= to_date('2011-08-07 08:00:00' , 'yyyy-mm-dd HH24-mi-ss') and dt <= to_date('2011-08-07 09:00:00' , 'yyyy-mm-dd HH24-mi-ss') and IMEI = '3030303032363038'
结果是2000多条 但是响应时间超过了7分钟请教如何让优化
我给这个表加了按日期的索引
但是查询的时候响应速度极慢查询sql语句 select * from GPS_INFO_HISTORY WHERE dt >= to_date('2011-08-07 08:00:00' , 'yyyy-mm-dd HH24-mi-ss') and dt <= to_date('2011-08-07 09:00:00' , 'yyyy-mm-dd HH24-mi-ss') and IMEI = '3030303032363038'
结果是2000多条 但是响应时间超过了7分钟请教如何让优化
解决方案 »
- 怎样写group by处理交叉组合的统计?
- 调用存储过程出错了,这是什么错误?
- oracle数据库再安装完以后,是否有一个默认的数据库和用户??如果新建数据库和用户怎样做??
- 怎么解决“ORA-12911: 永久表空间不能是临时表空间”?
- 初学者,请教一个简单问题
- 又是游标问题,MD
- oracle8i16总安装失败
- ORA-04091 USER.TABLE 发生了变化,触发器/函数不能读
- 如何实现在oracle一个数据库中实时的从另一个数据库的一张表中取得其新增数据,并插入
- ★★ 在linux中怎么启动OEM,已经添加了资料档案库,用什么命令。★★
- 关于oracle job问题的请教
- 存储过程里,参数和变量的区别是?
或者建表分区 。以dt建。
2、索引
3、语句优化。像你这个语句,把查询条件换个位置试试(能够大批量过滤数据的条件放到最后),不过效果可能不会很明显。
把IMEI也加上索引试试,或者干脆用时间和IMEI的联合索引