PowerPivot中的SUMIFtypes函数

我对Excel非常熟悉,但是对于PowerPivot来说是非常新的。 我有一个数据集,其中包括每个赛季每个NBA球员的比赛日志,我想要一个新的列来计算一个球员在一个特定的夜晚总分钟数。

在Excel中,这将是一个简单的SUMIF: [Minutes] if [Team] = [@Team] and [Date] = [@Date]

如何在PowerPivot中处理这个问题,或者在将数据导入PowerPivot之前,我需要做些什么?

这听起来像是一个措施可以更好地解决的问题。 请参阅度量值与计算列的链接 。

Power Pivot模型的典型消费工具是数据透视表,只有数据透视表中的每个单元格都会重新评估度量值。 计算的列仅在模型刷新时重新计算。

这将如下简单:

 TotalMinutes:= SUM(FactGameLog[Minutes]) 

然后,在您的数据透视表中,您可以根据需要将PlayerName,Team和Date带入行,列或filter(或切片器)。

我最初的反应是这是一个数据透视表/图表devise问题。 数据透视表为您查询模型。 所以你可以有一个简单的SUM()度量,然后按date切片,玩家和团队在你的行分组。 或者,您可以添加filter来查看单个玩家或团队。

但是,有条件求和的DAX函数,如SUMIF / COUNTIF(也是条件平均值,最小/最大值,计数和其他聚合)。

您需要使用计算的度量。 创build度量时,您将要使用SUMX(对于其他聚合types也使用COUNTX,AVERAGEX等)。

最大的问题是你正在比较哪些值(@Team和@Date)。 他们在另一列,相关的表,还是他们是静态的?

无论如何,联盟会是这样的。

YourMeasure:= SUMX(TableName,expression式)

分钟总计:= SUMX(GameData,IF([team] =“Team1”&& [Date] = DATE(2015,11,5),[Minutes],BLANK()))

这个例子只是使用一个硬编码的string,但你可以根据你的需要来改变它。 注意条件逻辑build立到第二个参数中。 它将会聚合[分钟]字段或具有空白值。

希望这可以帮助。