在財務系統或者其他報表統計的功能里我想類似下面這張報表的case很多,有了grouping_id函數之后會輕松easy實現,不菲催費之力
?
序號 | ??? 項???? 目 | 上年 | 本年 | ? | 增減 | ? | |
日均余額 | 成本率 | 日均余額 | 成本率 | 日均余額 | 成本率 | ||
? | ?? 總???? 計 | ? | ? | ? | ? | ? | ? |
一 | 銀行借款 | ? | ? | ? | ? | ? | ? |
1 | 用于商業票據額度 | ? | ? | ? | ? | ? | ? |
? | 國家開發銀行 | ? | ? | ? | ? | ? | ? |
2 | 其它授信額度 | ? | ? | ? | ? | ? | ? |
? | 國家開發銀行 | ? | ? | ? | ? | ? | ? |
? | 美國銀行 | ? | ? | ? | ? | ? | ? |
二 | 集團拆入 | ? | ? | ? | ? | ? | ? |
三 | 總部拆入 | ? | ? | ? | ? | ? | ? |
?
解析: 此表是三級匯總,銀行匯總到額度(商業額度、其他額度),各種額度匯總到拆入方式(銀行借款、集團拆入、總部拆入)、拆入方式匯總總計。grouping_id可以實現N級逐級匯總
用法:
案例
select grouping_id(loan.nborrowtype,
?????????????????? loan.nfinancetype,
?????????????????? loan.ncounterpartyid) groupid,
?????? sum(bal.mbalance) / 365 currentYearAvg,
? from billbalance trans
?where 1 = 1
?group by rollup(loan.nborrowtype, loan.nfinancetype, loan.ncounterpartyid)
?order by loan.nborrowtype???? desc,
????????? loan.nfinancetype??? desc,
????????? loan.ncounterpartyid desc
解析: grouping_id(filed1,field2,field3....),區分字段,函數會根據第一個字段的分組來作為一級顯示,即上表的拆入類型。類推,第二個字段是二級顯示即拆入方式。。。。
、?group by rollup(filed1,field2,field3....)、分組字段,同上
order by loan.nborrowtype???? desc,loan.nfinancetype??? desc,loan.ncounterpartyid desc,此處desc說明是匯總行在顯示行的上面,如需匯總行顯示在下面向下匯總,改成asc即可。。
ps:以上三個部分缺一不可
?
?
?
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
