人妻夜夜爽天天爽三区丁香花-人妻夜夜爽天天爽三-人妻夜夜爽天天爽欧美色院-人妻夜夜爽天天爽免费视频-人妻夜夜爽天天爽-人妻夜夜爽天天

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

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

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


[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

主站蜘蛛池模板: 成人a片在线观看免费播放 成人a图 | 精品超清影视工场全集在线观看免费版 | 国产在线播放精品 | 国产色综合天天综 | 欧美日韩一区二区三区久久 | 天天干天天爱天天 | 鲁在线视频 | 国色天香精品一卡2卡三卡4卡 | 久久久精品人妻一区二区三区图 | 国产亚洲综合久久 | 久久久久久久久无码精品亚洲日 | 久久精品欧美一区二区 | 国产成人理论片在线观看 | 日韩成人高清二区三区 | 高清无码不卡在线 | 国产 麻豆 日韩 欧美 久久 | 欧美日韩精品激情 | 婷婷免费视频 | 久久久无码精品亚洲日韩按摩 | 亚洲中文久久精品无码浏不卡 | 一本道高清无码在线观看黄色工 | 国产精品成人va在线观看 | 狠狠色噜噜狠狠狠狠 | 国产天堂 | 精品成在人线av无码免费看 | 99久久精品国产区二区三区日韩 | 欧美日韩综合在线精品 | 久久久精品国产免费看片 | 亚洲日产一线二线三线精华液 | 亚洲Aⅴ无码专区在线观看q | 四虎最新在线永久免费 | 欧美日韩一区二区在线视频 | 国产成人免费一区二区三区 | 精品日本综合乱伦 | 国产真实乱系列 | 日日摸夜夜添夜夜无码区 | 久久久久成人 | 成人精品第一区二区三区 | 97精品人妻酒店综合大胆无码 | 麻豆精品无人区码一二三区别是如何影响商品管理和购物体验 | 久久精品视频无码一区二区三 |