微软BI 之SSRS 系列 - 巧用 RunningValue 函数在分组中排序并设置 RANK 排名

浏览: 4666

开篇介绍

经常有像类似于这样的排序需求,以及设置分组下的排序序号。比如此图中要求城市 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 的变化情况。

推荐 1
本文由 BIWORK 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

1 个评论

深度好文,学习并实践中...

要回复文章请先登录注册