中報表 姓氏分組 報表工具中怎麼給資料排序

2021-10-14 22:21:00 字數 1911 閱讀 6751

乙份雜亂無章的報表 _ 我們需要把它變得有序,可以使我們更清楚的檢視資料。在資料庫裡面我們可以使用 esc 和 desc 根據乙個字段排序,在報表裡面也有 1 和 -1 對乙個字段排序,但是如何做到讓字段根據計算後的結果排序呢?讓我們一起去幹學院看個究竟吧:輕鬆搞定分組報表中的各種排序!

複製摘要

在做分組報表統計時,我們經常會被要求按照資料公升序或降序排序。在 group 函式的引數中,我們可以指定分組後對組的排序表示式,這樣報表展現時能夠直接根據該表示式進行排序了。我們先來看乙個簡單的例子,如下圖所示:

其中,a1 表示式為:=ds1.group(貨主地區, 貨主地區!=null; 貨主地區;ds1.sum( 數量 * 單價))

意思是:在根資料集 ds1 中取出貨主地區不為空的資料,並按照貨主地區進行分組,分組後求出每組的總價 sum(數量 * 單價),然後按照這個彙總值對組進行公升序排列。

分組排序後的效果如下圖所示:

但是有些時候,某些單元格的資料可能是通過其他單元格計算後的結果,這樣就無法通過 group 函式的引數來指定了,例如下圖這樣:

報表 d2 單元格的資料是根據前兩個單元格相減計算後的結果,這時就無法通過 group 函式來完成排序控制操作了,那麼有什麼方法能夠實現依據這樣計算出來的單元格結果進行排序呢?

(苦思冥想中····)額,我可以做乙個排名,但是排序要怎麼做呢?

bingo··答對了一半,就是需要先排名哦。

1)首先按照上圖中展現的報**式,在 a 列左邊和下邊分別插入行、列,並且給報表追加一列。形成如下如所示的樣式:

2)然後在 a3 中寫表示式 =to(1,count(b2{}))。

3)在 f2 單元格中按照 e2 單元格的資料計算排名, 寫入表達 =count(e2[`0])+1。如下圖所示:

a3 中的表示式是為了控制該行進行縱向擴充套件,有幾個地區就擴充套件幾行,這樣報表在展現時就會在下方增加一片資料區域,並且第一列是 1、2、3 這種編號形式。而 f2 單元格則是根據實際金額做了對應的排名,出來的值也是 1、2、3 的形式。這樣,就可以根據排名對資料進行選擇了。

4)在 b3 單元格中寫入表示式:=b2。

這個表示式的意思是:從 b2 單元格中取數,但是取數時加上了限定條件:f2(排名)單元格的值等於這一行的 a3(序號)單元格的值,也就是從 b2 單元格中按照排名順序取出對應的地區放在 b3 單元格中。預覽的效果如下圖所示:

其餘 c3、d3、e3 幾個單元格的情況類似:

然後再將沒用的行列隱藏掉,就能夠實現我們的的需求了,即按照單元格表示式的計算結果進行排序展現,結果如下:

【總結一下:】

在上面的示例中,表示式:=b2 是【層次座標】的用法。主要是在進行報表設計時,單元格尚未進行擴充套件,但是其它某些單元格的表示式往往需要對這個單元格擴充套件後的單元格進行精確定位並運算。

【層次座標】的具體使用方法可以看一下我們的教程裡面的 12.3.2 章節。

SAP BO 報表工具

隨著大資料時代的來臨,bi分析工具也熱火朝天的發展起來。由於一直在做sap的bi產品,所以主要圍繞著sap bo提供的報表工具做乙個簡單的選型介紹。目前sap bo提供了下列元件供我們選擇 crystal report 固定格式報表,財務三大表的優秀載體,但是不支援即席查詢。web intellig...

報表工具需要「報」「表」完美結合

報表報表,顧名思義,有 報 也有 表 是由 報 和 表 兩部分構成的。報 指資料的匯 計,即將資料從資料庫中取出按一定規則運算統計後排列。表 則指格式,資料需要放在格仔中,才能清楚定位,體現資料之間的層次與對應關係。報 和 表 兩方面需要完美結合,才能把完整的報表問題解決好。目前很多國際品牌的報表工...

商務智慧型報表工具

商務智慧型 bi 解決方案 artm report 是乙個b s 方式的基於 olap 的多維資料集展現工具。能夠提供給使用者乙個靈活的報表定義和資料分析平台,為使用者提供豐富的資料展現形式和強大的資料分析功能。artm report 能夠讓使用者在客戶端輕鬆地訪問 分析 sql server an...