数据如下    格式转成
Key    Value
总数     2169192
素        216
荤        42760
大家帮帮忙,谢谢。语句越简单越好。行列转换

解决方案 »

  1.   

    select '总数' key,总数 value from 表
    union all
    select '素',素 from 表
    union all
    select '荤',荤 from 表
      

  2.   

    declare @demo table (su int,hun int ,total int)
    insert into @demo(su,hun,total) select 216,42760,2169192select 
    SUM(case  when total <>0 then (total) else 0 end ) as total,
    SUM(case  when su <>0 then (su) else 0 end ) as su,
    SUM(case  when hun <>0 then (hun) else 0 end ) as hun 
    from @demo
      

  3.   

    declare @demo table (su int,hun int ,total int)
    insert into @demo(su,hun,total) select 216,42760,2169192select 
    SUM(case  when total <>0 then (total) else 0 end ) as total,
    SUM(case  when su <>0 then (su) else 0 end ) as su,
    SUM(case  when hun <>0 then (hun) else 0 end ) as hun 
    from @demo
      

  4.   

    如果数字不固定怎么办呢?
    select 
    count(1) as 总数,
    count(case when su>0 then 1 else null end) as 素,
    count(case when hun>0 then 1 else null end) as 浑
    FROM Dish
    这是我生成结果集的sql