语句如下:
select a.id,a.khbh,a.cplb,a.ckzl,a.cksl,a.ckrq from (select gf.cpckjlk.id,gf.cpckjlk.khbh,gf.cpckmxk.cplb,gf.cpckmxk.ckzl,
gf.cpckmxk.cksl,gf.cpckjlk.ckrq from gf.cpckjlk,gf.cpckmxk where gf.cpckjlk.khbh='530115' 
and gf.cpckjlk.id=gf.cpckmxk.id order by gf.cpckjlk.id desc) a where rownum<11 其中cpckmxk里有400万条左右的数据

解决方案 »

  1.   

    to wx_zfjacky(阿酷) :有索引的
    to yown(yong):初用ORACLE,请问怎么看执行计划?
      

  2.   

    1. 确保有plan_table在当前用户下. 没有运行这个.
    @?/rdbms/admin/utlxplan2. 
    explain plan for
    select ... from .. where ...
    /
    @?/rdbms/admin/utlxplp.sql
      

  3.   

    我现在用的PL/SQL Developer,请问怎么搞?
      

  4.   

    简直自找麻烦.多一重的查询就是多浪费时间..select gf.cpckjlk.id,gf.cpckjlk.khbh,gf.cpckmxk.cplb,gf.cpckmxk.ckzl,
    gf.cpckmxk.cksl,gf.cpckjlk.ckrq from gf.cpckmxk,gf.cpckjlk where 
    gf.cpckmxk.id=gf.cpckjlk.id  and 
    gf.cpckjlk.khbh='530115'
     and rownum<11 
    order by gf.cpckjlk.id desc
    (取出一些不必要的字段,,浪费时间读取).如果你的版本Low,,并却选择choose优化,,请调整条件.
      

  5.   

    gf.cpckjlk 表 id字段上建立降序索引 create index cpckjlk_index_id (id desc)
    gf.cpckmxk 表 id 字段上建立降序索引 create index cpckmxk_index_id (id desc)
    gf.cpckjlk 表 khbh 字段上建立索引  create index cpckjlk_index_khbh (khbh)
    然后重新分析表
    ex : analyze table gf.cpckjlk compute statistics
    analyze table gf.cpckmxk compute statistics