日期:2014-05-18 浏览次数:20618 次
select type,SUM(num)num from ( select case TYPE when 2 then '1'+'和2' when 1 then '1'+'和2' else '3' end type,num from tb)a group by type /* type num 1和2 17 3 16 */
------解决方案--------------------
use tempdb go create table tb (type int ,num int) go insert tb select 1, 2 union all select 2 ,3 union all select 3 ,5 union all select 1 ,4 union all select 2 ,8 union all select 3 ,11 select type ,sum(num) as num from (select case when type=1 then '1和2' when type=2 then '1和2' else '3' end type, sum(num) as num from tb group by type)a group by type type num ---- ----------- 1和2 17 3 16 (2 行受影响)