我的表结构
gcmc       dwmc         gclx       gcl
工程a     工程一处      已完工     1000000
工程b     工程三处      未完工     2000000
工程c     工程一处      已完工     3000000如何搞出这样的结果单位名称  已完工工程  未完工工程   金额
工程一处      2           0          4000000 
工程三处      0           1          2000000 很急 摆脱拉

解决方案 »

  1.   

    个人认为用一条SQL语句实现不了
      

  2.   

    select distinct 单位名称=dwmc,已完工工程=count(a),未完工工程=count(b),sum(gcl) from (select *,a=(select case gclx wher 未完工 then 1 when 已完工 then 0),b=1-a, from 表) group by  dwmc不知道好不好,没试,你试试吧!
      

  3.   

    select
        '单位名称'    = gcmc,
        '已完工工程'  = sum(case gclx when '已完工' then 1 else 0 end),
        '未完工工程'  = sum(case gclx when '未完工' then 1 else 0 end),
        '金额'  = sum(gcl)
    from   a group by  gcmc
      

  4.   

    select distinct 单位名称=dwmc,已完工工程=sum(a),未完工工程=sum(b),sum(gcl) from (select *,a=(select case gclx wher 未完工 then 1 when 已完工 then 0),b=1-a, from 表) group by  dwmc上面的count改为sum