在多表链接中,如何去进行关联。来提高sql的执行速度

解决方案 »

  1.   

    1.尽量用全连接,连接字段最好都是主key匹配,防止笛卡尔积
    2.尽量用索引来检索
    3.少用子查询
    4.存放一些名称的小表,放到最后
      

  2.   

    优化sql有两个方向;
    1,调整执行计划,小表作为驱动表,不论有多少表连接都是一个原则;
    2,对过滤性较好的字段做索引。
      

  3.   

    这个问题很大,具体情况具体分析。
    基于成本的优化,一般来说在相关条件上建立好适当的索引,
    由oracle自已搞定就行了。
      

  4.   

    oracle 不能像sql server的优化器一样 自动调整表顺序么?
      

  5.   

    用CBO可以不管顺序,ORACLE自动优化的.
      

  6.   

    就像 有A ,B,C,D,E,F,G 链接查询
    可以 先将 A 和B 连接查询 ,将查询的结果放在中间表T1中;
    将 C 和 D 链接查询,结果放在T2 中;
    同理,W,F,G 连接查询结果房子T3中;
    最后 T1,T2,T3连接查出最后的结果