DAX计算儿童总和的总和

问题描述 投票:0回答:1

我是DAX的新手,之前我使用过MDX。我在MDX中有以下公式

    CREATE 
  MEMBER CURRENTCUBE.[Measures].[Count Visit] AS [Measures].[Unique Contact Count]
  ;    

scope([Date Cheque].[YEAR-MONTH-DATE].[Month Of Year], [Measures].[Count Visit]);
this= Sum
        ({[Date Cheque].[YEAR-MONTH-DATE].CurrentMember.Children}
         ,[Measures].[Count Visit]);
end scope;

scope([Date Cheque].[YEAR-MONTH-DATE].[Calendar Year], [Measures].[Count Visit]);
this= Sum
        ({[Date Cheque].[YEAR-MONTH-DATE].CurrentMember.Children}
         ,[Measures].[Count Visit]);
end scope;

我知道DAX中没有层次结构,所以我不知道如何做这样的事情

powerbi dax ssas-tabular
1个回答
0
投票

通常,您可以在DAX中使用过滤器检查功能,例如ISFILTEREDISCROSSFILTEREDHASONEVALUEISINSCOPE,以确定当前的计算级别。这允许我们做复杂的事情,我们通常在MDX中使用SCOPE语句。

但是,在这种情况下,您似乎只想在日级别评估[Measures]。[Unique Contact Count],然后将其滚动到更高级别。为此,我们可以简单地编写[计数访问]度量,如下所示,假设您的“日期检查”表格中包含日期粮食的[日期]列:

SUMX(VALUES('Date Cheque'[Date]), [Unique Contact Count])

SUMX是一个所谓的迭代器函数,它将为第一个参数中的每一行(必须是表表达式)计算第二个参数,并返回第二个参数的总和。

© www.soinside.com 2019 - 2024. All rights reserved.