还是下面的这段语句:
select 公司id,公司名称,sum(金额) as 用款总额 from
(
  select * from 1
  union all
  select * from 2 
) t where 审批意见='同意' 
group by 公司id,公司名称 order by 公司id
目的是将表1和2进行组合查询分组成一个的汇总,现在要有一个新的要求如下:
现在执行语句的结果可能如下:
公司id  公司名称   用款总额
1       大同分公司  325
2       承德分公司  352
3       阳泉分公司  158
4       唐山分公司  545
5     石家庄分公司  326现在需要加入一个表的关联,这个表是个公司名称的对照表,表名是3
他的表内容可能如下:
 zyid zyname       gsid     gsname
 1    河北分公司    2       承德分公司
 2    河北分公司    4       唐山分公司
 3    河北分公司    5       石家庄分公司
 4    山西分公司    1       大同分公司
 5    山西分公司    3       阳泉分公司
现在的需要是第一个汇总出来的结果要和这个公司名称对照表关联,得出更进一步的汇总,其得出的汇总结果样式如下:
 公司名称     用款总额
 河北分公司   1223
 山西分公司   483

解决方案 »

  1.   

    select b.zyname 公司名称, sum(用款总额) from (select 公司id,公司名称,sum(金额) as 用款总额 from
    (
      select * from 1
      union all
      select * from 2 
    ) t where 审批意见='同意' 
    group by 公司id,公司名称 order by 公司id) a,
    3 b
    group by b.zyname
      

  2.   

    汗 错了
    select b.zyname 公司名称, sum(用款总额) from (select 公司id,公司名称,sum(金额) as 用款总额 from
    (
      select * from 1
      union all
      select * from 2 
    ) t where 审批意见='同意' 
    group by 公司id,公司名称 order by 公司id) a,
    3 b
    where b.gsname=a.公司名称
    group by b.zyname
      

  3.   

    汗 错了
    select b.zyname 公司名称, sum(用款总额) from (select 公司id,公司名称,sum(金额) as 用款总额 from
    (
      select * from 1
      union all
      select * from 2 
    ) t where 审批意见='同意' 
    group by 公司id,公司名称 order by 公司id) a,
    3 b
    where b.gsname=a.公司名称
    group by b.zyname