程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> 5.4 多層交叉匯總報表

5.4 多層交叉匯總報表

編輯:關於SqlServer

前面5.2節裡的交叉報表在實際情況中比較少,一般情況下,表頭的數據更多,需要分組進行,這就帶來了分組統計的問題,今天我們就一個例子來了解一下快逸報表是如何制作多層交叉匯總報表的。

采用5.2.raq的內建數據集作為我們的數據來源,我們需要完成的報表,最後展示為:

在A3單元格內輸入:=ds1.group(產品,false),擴展方向為【縱向擴展】;

在B3單元格內輸入:=ds1.select(銷售代表)(默認主格為A3);

在B2單元格內輸入文字:銷售代表;

在C2單元格內輸入:=ds1.group(地區,false),擴展方向為【橫向擴展】;

在C3單元格內輸入:=ds1.銷售額(默認主格為B3);

預覽:

我們看到,有些單元格因為沒有數據而顯示為空。正常情況下,我們希望看到沒有數據的單元格顯示數據為“0”,如何處理呢?

在C3單元格右側的屬性中,有一個“顯示值”屬性,我們輸入表達式:if(value()==null ,0,value()),value()表示當前單元格的值,如果這個值為空,那麼顯示為“0”,否則顯示該值。預覽:

在D3、C4單元格內輸入同樣的表達式:=sum(C3{})(因為各自的主格不同,所以相同的表達式計算出來的值卻不同);

在D4單元格內輸入表達式:=sum(D3{}),調整報表的邊框、匯總數據的字體顏色等,預覽,即得本文開篇的報表。(下載)


來自:快逸報表——入門級基礎教程:多層交叉匯總報表。

 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved