字段1     字段2
a          2b          3c          4a          2b          3c          4要得到的结果是字段1     字段2
a          4b          6c          8a          4b          6c          8
也就是相同的记录求和。

解决方案 »

  1.   

    select sum( 字段2 ) as 字段2
    from 表
    group by 字段1
    order by 字段1 asc
    即可!
      

  2.   

    select 字段1 ,sum( 字段2 ) as 字段2
    from 表
    group by 字段1
    order by 字段1 asc
      

  3.   

    select 字段1
    ,sum( 字段2 ) as 字段2
    from 表
    group by 字段1union allselect 字段1
    ,sum( 字段2 ) as 字段2
    from 表
    group by 字段1order by 字段1 asc
      

  4.   

    为什么求和的结果要显示两次?如果是一次的话,就用
    select 字段1, sum(字段2) as 字段2
    from 表名
    group by 字段1
    order by 字段1
    就可以了
    如果一定要两次的话,你只好用union all了。
    不过你用在什么样的程序里?我还是建议你用存储过程比较好,可以封装多于1条的sql语句
      

  5.   

    select a.f1,b.s from tb a
    inner join (select f1,sum(f2) s from tb group by f1) b
    on a.f1=b.f1
      

  6.   

    语句不是拿来乱用的. b若出现100次,那就 UNION ALL 100次?
    何况怎么知道是应该UNION 100次. 即使知道 union多少次, 排序结果也是有问题的.