胖达君的超级工具

Power BI |DAX函数のCALCULATE函数和Filt

2020-07-06  本文已影响0人  故古顾股骨

CALCULATE

语法结构:

CALCULATE(<expression>,<filter1>,<filter2>…)

第一个参数为表达式,可以执行各种聚合函数;

第二个参数为筛选器,可为空,通过筛选器得出需要进行计算的对象,再通过表达式计算出结果。

举个例子:

实操举例:数据集:商品销售明细表.xlsx

关注公众号获取数据:耶浓薄荷

其中‘省市.省份’以及‘销售额’为表字段,‘河北省销售额’、‘销量’、‘河北省销量’为度量值。

河北省销售额 =

CALCULATE(SUM('商品销售明细表'[销售额]),'商品销售明细表'[省市.省份]="河北省")

销量 = COUNTROWS('商品销售明细表')

河北省销量 = CALCULATE([销量],'商品销售明细表'[省市.省份]="河北省")

从这里可以明显看出CALCULATE()的作用。

CALCULATE函数是PowerBI 中常用的函数,Filter函数经常与CALCULATE()结合使用。

Filter

语法结构:

FILTER(<table>,<filter>)

第一个参数为表,

第二个参数为筛选器,

该函数结果为一张表,创建度量值时无法单独使用,需结合其他函数。

举个例子:

河北省销售额2 =

CALCULATE(SUM('商品销售明细表'[销售额]),

FILTER(ALL('商品销售明细表'[省市.省份]),

'商品销售明细表'[省市.省份]="河北省"))

这里的度量值‘河北省销售额2’等同于上述‘河北省销售额’。

乍一看似乎麻烦了很多,但是,当互相关联的表多了之后,使用Filter函数就会显得方便许多。

D010101销售额 =

CALCULATE(SUM('商品销售明细表'[销售额]),

FILTER(ALL('省市'),

'省市'[门店编码]="D010101"))

D010109销售额 =

CALCULATE(SUM('商品销售明细表'[销售额]),

FILTER(ALL('省市'),

'省市'[门店编码]="D010109"))

知乎搜索入骨

上一篇下一篇

猜你喜欢

热点阅读