微軟BI 之SSRS 系列 - 巧用 RunningValue 函數在分組中排序並設置 RANK 排名


開篇介紹

經常有像類似於這樣的排序需求,以及設置分組下的排序序號。比如此圖中要求城市 City 在省份下按照 Internet Sales Amount 總銷售額進行排序,並標識在各省份下的排名。

實現過程

先把分組做好,然后添加新的一列 Rank。

在 City 分組的 Group Properties 中,它的排序是按照 SUM 聚合 Internet Sales Amount 來排序的。

在 Rank 位於 City 一行的表達式中使用 RunningValue 函數。

下面表達式的作用是在指定的 StateProvince 組下,計算去重之后 City 的數量,那么第一行就是 1,第二行累加就變成 1+1 = 2 了,這樣就實現了排序 RANK NO。

關於 RunningValue 函數的使用可以參考:https://msdn.microsoft.com/zh-cn/library/dd255229.aspx

返回在給定作用域中計算的、由表達式指定的所有非 Null 數值的運行聚合。RunningValue(expression, function, scope)

在本示例中,可以將 Scope 變成 Nothing, 或者 Country 來看看不同作用域下 RunningValue 的變化情況。

更多 BI 文章請參看 BI 系列隨筆列表 (SSIS, SSRS, SSAS, MDX, SQL Server)  如果覺得這篇文章看了對您有幫助,請幫助推薦,以方便他人在 BIWORK 博客推薦欄中快速看到這些文章。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM