那是因为你没有使用索引的缘故,所以慢
你在建库的时候为表加上索引,然后在查询时,在WHERE里使用它,即可 :)

解决方案 »

  1.   

    也不是说建了索引就一定快的:
    如果item = '0001'的比例超过了5%,索引就不见的快了,如果低于1%,速度是绝对明显的
    索引有利于快速定位
      

  2.   

    ntchengl 说的有道理 不是建了索引速度就一定快的
      

  3.   

    没有索引,全表扫描会快就怪了
    建议经常包括在WHERE子句里的列建索引
      

  4.   

    select,update,delete 语句中的子查询应当有规律地查找少于20%的表行.如果一个语句查找的行数超过总行数的20%,它将不能通过使用索引获得性能上的提高. 索引可能产生碎片,因为记录从表中删除时,相应也从表的索引中删除.表释放的空间可以再用,而索引释放的空间却不能再用.
      

  5.   

    Oracle 中查看所有已经建了的索引的命令是什么?
      

  6.   

    建义老总给你权限,现在只在sql语句优化,一点都不实际.要是静态编译了的语句,那效果可想而知!
      

  7.   

    Oracle 中查看所有已经建了的索引的命令是:
    select * from ind如有索引,当然有where语句也要看情况。
    如果是索引列 = 快于 <> ,所以如果是 <> 可转化为 > and < 来做速度会快很多。
    如果有 or 条件最好转换为 union 来查,这样速度也可大大提高。
      

  8.   

    select index_name from all_indexes where owner='用户名'
      

  9.   

    能把你的问题写清楚一点吗? 最后在查寻时就可以 SELECT ITEM.a,ITEM.b………… FROM TEMP_ITEM 这样能查出你想要的
    select ITEM.a,ITEM.b…………ITEM.ITEM from ITEM where ITEM='0001'
    信息吗?