现在有一个oracle数据表,现在里面有40万数量,每星期大概要新增5分条,现在要查询这张表,并且排序分页,有点慢,各位有没有遇到这样的情况,索引也建了好几样,还是慢,现在慢在原因在排序的那条SQL语句, select * from ( SELECT /*+ INDEX(tb,BBL_JY_INDEX_STARTTIME) */ rownum as nums,JYID,JYNAME,TO_CHAR(STARTTIME, 'yy-mm-dd hh24:mi:ss') AS STARTTIME,IMGURLLIST,JYPRICE,LOCUS,TXTURL FROM BBL_JY WHERE 1 = 1 AND JYNAME LIKE '%甘肃%' AND STARTTIME IS NOT NULL and starttime >to_date('1997-1-1','yyyy-mm-dd') ORDER BY STARTTIME DESC ) tb where tb.nums between 11 and 20
这是本人的sql语句或者是 tb.nums>10 and tb.nums<21 但这样和between 的速度没有相差多少
问下各位有没有什么好的办法,让他快点
这是本人的sql语句或者是 tb.nums>10 and tb.nums<21 但这样和between 的速度没有相差多少
问下各位有没有什么好的办法,让他快点
解决方案 »
- 会用Oracle Spatial的过来,怎么生成oracle的network?
- 怎么实现两张表相关数据的update?
- Oracle RAC 集群进行40万条数据访问时反而比单机更慢?是什么原因?
- PL/SQL中的HINT问题?
- oracle 8i中的空操作语句怎么写
- 另一个数据库的带参数的存储过程应该怎么调用?
- .NET与Oracle的远程连接问题
- 过程 for j in (SQL语句) loop 这样语句中的SQL语句能否写成动态的?
- SQL PLUS 与sql plus worksheet 的区别
- 完全清除数据
- C++ builder 调到oracle 存储过程式的问题
- 一字段存的是多个类别的ID的字符串,转化成Name字符串,在线等
后面又是starttime >to_date('1997-1-1','yyyy-mm-dd')
不知你的BBL_JY_INDEX_STARTTIME索引是如何建的,估计已经用不了了
select * from (
select * from
(
select t.*,rownum rn table order by XXX
)
where rn<=XX )
where rn>XX
先写<=,然后再>