解决方案 »

  1.   

    关联的写法应该会更快一点
    在select子句中的子查询一般会全表遍历的
    具体可查看两种写法的执行计划
    一切以最终的查询计划为准
      

  2.   

    由于tab_b表数据量不是太大,速度的差异应该不会太明显
      

  3.   

    可以试试下面的方法,应该比这两种都要快
    select id,max(xm) xm,max(xb) xb,max(mz) mz from(
    select id,xm,xb,null mz from table_a
    union all
    select id,null,null,mz from table_b)
    group by id