DAX-MANY_TO_MANY

一般来说,多多关系处理有三种方法处理:

 

方法1,CROSS TABLE FILTERING

同表或相关表的列过滤,功能强大,自然很复杂。

要点:

Calculate function performs the following operations:
1. Create a new filter context by cloning the existing one.
2. Move current rows in the row context to the new filter context one by one and apply blocking semantics against all previous tables.
3. Evaluate each setfilter argument in the old filter context and then add setfilter tables to the new filter context one by one and apply blocking semantics against all tables that exist in the new filter context before the first setfilter table is added.
4. Evaluate the first argument in the newly constructed filter context.
 
AmountM2M :=
CALCULATE (
    SUM ( Fact_Transaction[Amount] ),
    Bridge_AccountCustomer,
    Dim_Account
)
 
方法2,SUMMARIZE
 
 
AmountM2M :=
CALCULATE (
    SUM ( Fact_Transaction[Amount] ),
    SUMMARIZE (
        Bridge_AccountCustomer,
        Dim_Account[ID_Account]
    )
)

 

方法3,COUNTROWS

 

AmountM2M :=
CALCULATE (
    SUM ( Fact_Transaction[Amount] ),
    FILTER (
        Dim_Account,
        CALCULATE ( COUNTROWS ( Bridge_AccountCustomer ) ) > 0
    )
)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值