select *
  from table1 t1,table2 t2
 where t1.name :1
   and t2.no :2
   and t1.id = t2.id;我有2个表,t1的 name id  t2的 no id都有索引,但是由于t1.name某些特殊数据重复数据量大,导致缓慢,这里我需要将执行计划改变
先执行 t2.no :2
然后   t1.id = t2.id
最后   t1.name :1
因为通过前面2个条件得到的结果集已经很小了,再关联t1.name :1将会很快
使用hint orderd 这些来处理,小弟非常感谢!

解决方案 »

  1.   

    看不懂:
    是oralce语法么?
    你这是inner join,顺序貌似没区别的
      

  2.   

    select *
      from table1 t1,table2 t2
     where t1.name = :1
      and t2.no = :2
      and t1.id = t2.id;上面sql语句少了等号,不过应该大虾们能看懂。就是oracle语法啊,很普通的一个sql语句嘛!
    “:1”和“:1”是2个参数。