数据汇总加排序[2]

[入库:2005年8月18日] [更新:2007年3月24日]

本文简介:选择自 zjcxc 的 blog

go

--删除测试的临时表
drop table #t

/*--测试结果

项目名称    项目年度        地市          申请单位        支持金额       
---------- -------------- -------------- -------------- -----------
名称1        2004           省直             1公司          400
                                         1公司合计          400
名称2        2004           省直             2公司          300
                                         2公司合计          300
                          省直合计                          700
名称3        2004           石家庄            3公司         200
                                         3公司合计          200
                          石家庄合计                        200
           2004合计                                         900
名称3        2005           石家庄            3公司          100
                                         3公司合计          100
                          石家庄合计                        100
           2005合计                                         100
总计                                                        1000

(所影响的行数为 14 行)
--*/

--上面是按项目年度,地市,申请单位做小计,总计的
--下面是只按项目年度,地市做小计,总计的,比较一下,更容易看出规律
--下面是处理
select 项目名称,项目年度,地市,申请单位,支持金额
from( --这是实现汇总的部分(不考虑小计,总计处理部分的汇总)
 select *
  ,s1=0,s2=项目年度,s3=0,s4=地市,s5=0 --这是排序需要的
 from #t
 union all
 --这是实现汇总的小计,总计部分
 select 项目名称=case
   when grouping(项目年度)=1 then '总计'
   else '' end
  ,项目年度=case
   when grouping(项目年度)=0

本文关键:数据汇总加排序
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top