none
问问相关子查询的问题? RRS feed

  • 问题

  • 相关子查询说是将外部的每一行都拿去与内部的子查询进行匹配查找,如果外部表很大,岂不是要执行很多次,那么岂不是要影响速度了?
    2011年4月22日 7:17

答案

  • 你好!

    当外部表比较庞大的时候,可以考虑用  INNER JOIN 方式连接表格查询。执行的时候数据库会自动选择最优的连接方式(Loop, Merge, Hash),也可以手动指定:FROM table_one INNER [LOOP | MERGE | HASH] JOIN table_two. Merge JOIN适合数据量庞大的查询,当然不是一定的,跟整个数据库环境有关,比如索引。

    Best Regards,
    Stephanie Lv

    2011年4月22日 9:42

全部回复

  • 看执行计划 是什么连接方式,如果能选择MERGE join 是比较好的。
    2011年4月22日 7:42
  • 你好!

    当外部表比较庞大的时候,可以考虑用  INNER JOIN 方式连接表格查询。执行的时候数据库会自动选择最优的连接方式(Loop, Merge, Hash),也可以手动指定:FROM table_one INNER [LOOP | MERGE | HASH] JOIN table_two. Merge JOIN适合数据量庞大的查询,当然不是一定的,跟整个数据库环境有关,比如索引。

    Best Regards,
    Stephanie Lv

    2011年4月22日 9:42