您正在浏覽的是 FineBI 7.X 幫助文檔,點選跳轉至 FineBI 6.X 幫助文檔

資料編輯中按指定規則進行排序

1. 概述

1.1 問題描述

 如視窗函式等分析函式只能在組件內直接匯出並使用。

例如,RANK_AGG實現按照指定規則進行排序。對「合同付款類型」分組後,對組內不同「合同類型」金額降冪排名,如下圖所示:

如果在「資料編輯」中直接匯出。則提示「不支援直接匯出聚合函式」。如下圖所示:

那麼如何在資料編輯中,我們如何實現按照指定規則進行排序呢?

1.2 問題原因

RANK_AGG 和 WINDOW是聚合級別函式,直接基於分析檢視表進行計算。而資料編輯是基於明細的計算,無法為 RANK_AGG 和 WINDOW 提供有效檢視表。

例如,問題描述中計算排名的公式為 :RANK_AGG([合同付款類型],[SUM_AGG(合同金額),"desc"],"UNIQUE")。依據「合同付款類型」分組後,分析檢視表中的維度欄拖入哪個欄位,就按哪個欄位降冪排序。

  • 拖入「合同類型」,則按「合同付款類型、合同類型」依次分組匯總金額,求降冪排名。

  • 拖入「客戶名稱」,則按「合同付款類型、客戶名稱」依次分組匯總金額,求降冪排名。

在「資料編輯」中需要固定分組欄位,得到一個固定的排名結果。因此,在組件計算新增的 RANK_AGG 排名公式無法在資料編輯中直接使用。

1.3 解決方案

 DEF 函式能夠構建一個獨立的檢視表,使用 DEF 嵌套視窗函式,可以為視窗函式提供明確的檢視表計算。

資料編輯中「新增公式欄」。

公式 = DEF(聚合指標/視窗函式計算結果,[視窗函式依賴的檢視表維度1,視窗函式依賴的檢視表維度2])

        = DEF(RANK_AGG([合同付款類型],[SUM_AGG(合同金額),"desc"],"UNIQUE"),[合同付款類型,合同類型])

具體的操作步驟請見下文範例。

2. 操作步驟

範例資料:合同事實表.xlsx

2.1 處理資料

1)在分析主題上傳範例資料。詳情請參見:5分鐘上手FineBI

2)對資料分組匯總。得到排序需要用的欄位。如下圖所示:

3)對資料先按「合同付款類型」排序,再按合同金額降冪。方便後續校驗公式計算結果。如下圖所示:

2.2 輸入公式

4)輸入計算公式=DEF(RANK_AGG([合同付款類型],[SUM_AGG(合同金額),"desc"],"UNIQUE"),[合同付款類型,合同類型])。如下圖所示:

步驟一用 RANK_AGG 計算排名對「合同付款類型」分組,然後對不同「合同類型」的金額降冪排名,排名規則“連續排名”RANK_AGG([合同付款類型],[SUM_AGG(合同金額),"desc"],"UNIQUE")
步驟二

用DEF函式嵌

目的是固定維度

「合同付款類型、合同類型」

DEF(步驟一公式,[合同付款類型,合同類型])

2.3 效果查看

如下圖所示:


附件列表


主题: 進階學習
  • 有帮助
  • 没帮助
  • 只是浏览
  • 圖片不清晰
  • 用語看不懂
  • 功能說明看不懂
  • 操作說明太簡單
  • 內容有錯誤
中文(繁體)

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

10s後關閉

獲取幫助
線上支援
獲取專業技術支援,快速幫助您解決問題
工作日9:00-12:00,13:30-17:30在线
頁面反饋
針對當前網頁的建議、問題反饋
售前咨詢
業務咨詢
電話:0933-790886或 0989-092892
郵箱:taiwan@fanruan.com
頁面反饋
*問題分類
不能為空
問題描述
0/1000
不能為空

反馈已提交

网络繁忙