最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

sql rollup用法 小計匯總

 更新時間:2009年07月01日 22:34:03   作者:  
rollup在oracle ,sql-server里面都有有。

這里介紹sql server2005里面的一個使用實例:

CREATE TABLE tb(province nvarchar(10),city nvarchar(10),score int)
INSERT tb SELECT '陜西','西安',3
UNION ALL SELECT '陜西','安康',4
UNION ALL SELECT '陜西','漢中',2
UNION ALL SELECT '廣東','廣州',5
UNION ALL SELECT '廣東','珠海',2
UNION ALL SELECT '廣東','東莞',3
UNION ALL SELECT '江蘇','南京',6
UNION ALL SELECT '江蘇','蘇州',1
GO

1、 只有一個匯總

select province as 省,sum(score) as 分數(shù) from tb group by province with rollup

結果:

廣東 10
江蘇 7
陜西 9
NULL 26


select case when grouping(province)=1 then '合計' else province end  as 省,sum(score)  as 分數(shù) from tb group by province with rollup

結果:

廣東 10
江蘇 7
陜西 9
合計 26


2、兩級,中間小計最后匯總

select province as 省,city as 市,sum(score) as 分數(shù) from tb group by province,city with rollup

結果:

廣東 東莞 3
廣東 廣州 5
廣東 珠海 2
廣東 NULL 10
江蘇 南京 6
江蘇 蘇州 1
江蘇 NULL 7
陜西 安康 4
陜西 漢中 2
陜西 西安 3
陜西 NULL 9
NULL NULL 26

select province as 省,city as 市,sum(score) as 分數(shù),grouping(province) as g_p,grouping(city) as g_c from tb group by province,city with rollup


結果:

廣東 東莞 3 0 0
廣東 廣州 5 0 0
廣東 珠海 2 0 0
廣東 NULL 10 0 1
江蘇 南京 6 0 0
江蘇 蘇州 1 0 0
江蘇 NULL 7 0 1
陜西 安康 4 0 0
陜西 漢中 2 0 0
陜西 西安 3 0 0
陜西 NULL 9 0 1
NULL NULL 26 1 1


select case when grouping(province)=1 then '合計' else province end 省,
       case when grouping(city)=1 and grouping(province)=0 then '小計' else city end 市,
       sum(score)  as 分數(shù)
         from tb group by province,city with rollup

結果:

廣東 東莞 3
廣東 廣州 5
廣東 珠海 2
廣東 小計 10
江蘇 南京 6
江蘇 蘇州 1
江蘇 小計 7
陜西 安康 4
陜西 漢中 2
陜西 西安 3
陜西 小計 9
合計 NULL 26

相關文章

最新評論

五寨县| 龙口市| 上饶市| 红安县| 英吉沙县| 新昌县| 南雄市| 隆昌县| 通海县| 林甸县| 铜陵市| 临朐县| 安仁县| 辽源市| 江津市| 武清区| 长治县| 根河市| 如皋市| 崇左市| 宜城市| 古田县| 阳西县| 钟祥市| 哈尔滨市| 桓台县| 铁岭市| 交口县| 长白| 高淳县| 通道| 黄冈市| 平湖市| 中卫市| 南澳县| 白山市| 丹棱县| 丰县| 江达县| 平和县| 巧家县|