主頁 > 知識庫 > sql rollup用法 小計匯總

sql rollup用法 小計匯總

熱門標簽:孝感銷售電銷機器人廠家 無錫梁溪公司怎樣申請400電話 高德地圖標注電話怎么沒了 北京智能外呼系統(tǒng)供應商家 電話機器人錄音師薪資 奧維地圖標注字體大小修改 中國地圖標注省份用什么符號 智能電銷機器人教育 江西穩(wěn)定外呼系統(tǒng)供應商

這里介紹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

標簽:那曲 荊州 臨滄 泰州 阜陽 海北 通化 齊齊哈爾

巨人網(wǎng)絡通訊聲明:本文標題《sql rollup用法 小計匯總》,本文關鍵詞  sql,rollup,用法,小計,匯總,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《sql rollup用法 小計匯總》相關的同類信息!
  • 本頁收集關于sql rollup用法 小計匯總的相關信息資訊供網(wǎng)民參考!
  • 推薦文章