公交车上荫蒂添的好舒服的电影-公用玩物(np双xing总受)-公用小荡货芊芊-公与妇仑乱hd-攻把受做哭边走边肉楼梯play-古装一级淫片a免费播放口

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

統計報表(用ROLLUP 匯總數據)

admin
2010年6月27日 17:33 本文熱度 7499


[b]作者 :[/b] [url=http://delphibbs.com/keylife/iblog.asp?author=hongyuan][color=#002c99]hongyuan[/color][/url][br][b]標題 :[/b] 統計報表(用rollup 匯總數據) [br][b]關鍵字:[/b] [br][b]分類 :[/b] [url=http://delphibbs.com/keylife/iblog.asp?author=hongyuan&rid=11148][color=#002c99]sql server 2000[/color][/url] [br][b]密級 :[/b] 私有
[align=right][url=http://delphibbs.com/keylife/iblog_comment.asp?xid=17813&pageno=9999][color=#002c99][/color][/url] [/align]

[p]統計報表(用rollup 匯總數據) [br]原貼:[url=http://community.csdn.net/expert/topic/4313/4313978.xml?temp=.691601][color=#002c99]http://community.csdn.net/expert/topic/4313/4313978.xml?temp=.691601[/color][/url][br][br][br]表inventory [br]item color quantity [br]-------------------- -------------------- -------------------------- [br]table blue 124 [br]table red 223 [br]chair blue 101 [br]chair red 210 [br][br]要得到下面結果: [br][br]item color qtysum [br]-------------------- -------------------- -------------------------- [br]chair blue 101.00 [br]chair red 210.00 [br]chair小計 311.00 [br]table blue 124.00 [br]table red 223.00 [br]table小計 347.00 [br]總計 658.00 [br][br][br]---該問題是一個典型的使用rollup生成結合的例子,聯機幫助也有相關介紹![br][br][br]-測試環境[br]declare @inventory table (item varchar(20),color varchar(20),quantity money)[br]insert into @inventory select 'table','blue',124[br]insert into @inventory select 'table','red' ,223[br]insert into @inventory select 'chair','blue',101[br]insert into @inventory select 'chair','red' ,210[br][br]--查詢[br]select case when (grouping(item) = 1) then '總計'[br] when (grouping(color) = 1) then item+'小計'[br] else isnull(item, 'unknown')[br] end as item,[br] case when (grouping(color) = 1) then ''[br] else isnull(color, 'unknown')[br] end as color,[br] sum(quantity) as qtysum[br]from @inventory[br]group by item, color with rollup[br][br]--結果[br]item color qtysum [br]------------------------ -------------------- --------------------- [br]chair blue 101.0000[br]chair red 210.0000[br]chair小計 311.0000[br]table blue 124.0000[br]table red 223.0000[br]table小計 347.0000[br]總計 658.0000[br][br](所影響的行數為 7 行) [/p][br]
[align=right]2005-10-10 9:44:39 [/align]


[url=http://delphibbs.com/keylife/iblog_man.asp?xid=17813][color=#002c99]修改筆記[/color][/url]
[url=http://delphibbs.com/keylife/iblog_comment.asp?xid=17813][color=#002c99]發表評語»»»[/color][/url] [url=javascript:modifycomment(18073)][color=#002c99]2005-10-10 10:01:01[/color][/url] grouping
[p]grouping[br]是一個聚合函數,它產生一個附加的列,當用 cube 或 rollup 運算符添加行時,附加的列輸出值為1,當所添加的行不是由 cube 或 rollup 產生時,附加列值為0。[br][br]僅在與包含 cube 或 rollup 運算符的 group by 子句相聯系的選擇列表中才允許分組。[br][br]語法[br]grouping ( column_name )[br][br]參數[br]column_name[br][br]是 group by 子句中用于檢查 cube 或 rollup 空值的列。[br][br]返回類型[br]int[br][br]注釋[br]分組用于區分由 cube 和 rollup 返回的空值和標準的空值。作為cube 或 rollup 操作結果返回的 null 是 null 的特殊應用。它在結果集內作為列的占位符,意思是"全體"。 [/p]
[align=right] [/align] [url=javascript:modifycomment(18074)][color=#002c99]2005-10-10 10:02:45[/color][/url] 用 rollup 匯總數據
[p]用 rollup 匯總數據[br]在生成包含小計和合計的報表時,rollup 運算符很有用。rollup 運算符生成的結果集類似于 cube 運算符所生成的結果集。有關更多信息,請參見用 cube 匯總數據。 [br][br]cube 和 rollup 之間的區別在于: [br][br]cube 生成的結果集顯示了所選列中值的所有組合的聚合。[br][br][br]rollup 生成的結果集顯示了所選列中值的某一層次結構的聚合。 [br]例如,簡單表 inventory 中包含:[br][br]item color quantity [br]-------------------- -------------------- -------------------------- [br]table blue 124 [br]table red 223 [br]chair blue 101 [br]chair red 210 [br][br]下列查詢將生成小計報表:[br][br]select case when (grouping(item) = 1) then 'all'[br] else isnull(item, 'unknown')[br] end as item,[br] case when (grouping(color) = 1) then 'all'[br] else isnull(color, 'unknown')[br] end as color,[br] sum(quantity) as qtysum[br]from inventory[br]group by item, color with rollup[br][br]item color qtysum [br]-------------------- -------------------- -------------------------- [br]chair blue 101.00 [br]chair red 210.00 [br]chair all 311.00 [br]table blue 124.00 [br]table red 223.00 [br]table all 347.00 [br]all all 658.00 [br][br](7 row(s) affected)[br][br]如果查詢中的 rollup 關鍵字更改為 cube,那么 cube 結果集與上述結果相同,只是在結果集的末尾還會返回下列兩行:[br][br]all blue 225.00 [br]all red 433.00 [br][br]cube 操作為 item 和 color 中值的可能組合生成行。例如,cube 不僅報告與 item 值 chair 相組合的 color 值的所有可能組合(red、blue 和 red + blue),而且報告與 color 值 red 相組合的 item 值的所有可能組合(chair、table 和 chair + table)。[br][br]對于 group by 子句中右邊的列中的每個值,rollup 操作并不報告左邊一列(或左邊各列)中值的所有可能組合。例如,rollup 并不對每個 color 值報告 item 值的所有可能組合。[br][br]rollup 操作的結果集具有類似于 compute by 所返回結果集的功能;然而,rollup 具有下列優點: [br][br]rollup 返回單個結果集;compute by 返回多個結果集,而多個結果集會增加應用程序代碼的復雜性。[br][br][br]rollup 可以在服務器游標中使用;compute by 不可以。[br][br][br]有時,查詢優化器為 rollup 生成的執行計劃比為 compute by 生成的更為高效。 [/p]

該文章在 2010/6/27 17:33:22 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 2025国产精品视频网站 | 精品动漫在线观看视频一区 | 国产精品成人一区二区三区 | 成人无码免费一区二区三区 | av免费| av在线中文字幕不卡电 | 国产无套内射久久久国产 | 后入清纯学生妹 | av无码成人精品区在线观看 | 国产蜜桃一区二区三区在线观看 | 国产精品无码中出在线播出 | 国产精品免费福利久久麻豆 | 国产精品亚洲综合91久 | av一区二区三区在线播放 | 国产真街拍裙底系列在线观看 | 2025国产精品香蕉在线观看 | 国产激情一区二区三区小说 | 高清无码袜亚洲人妻少妇福利视频 | 国产精品亚洲精品日韩动图 | 1000部未满十八禁止观看 | 国产精品国产三级国产av主播 | 精品国产性色无码av网站 | 国产秘麻豆果冻传媒 | 国产欧洲黄色一级片视频 | 91久久精品一区二区 | 97人人超碰国产精品最新 | 国产无套高潮在线观看 | 国产麻豆精品一区二区三区v视 | 国产在线精品一品二区 | 成人h小视频在线播放 | 国产高清天干天天天 | 国产高清a毛片在线看 | av亚洲欧洲日产国码无码 | 国产无码视频在线观看 | 爆乳女神少妇精品一区 | 国产无人区卡一卡二卡乱码 | 国产aⅴ一区 | 成人亚洲性情网站www在线观看 | 国产av亚洲精品ai换脸电影 | 国产一区二区三区视频 | av中文字幕一区少妇 |