GroupBy并在DAX中汇总

时间:2017-10-05 09:55:06

标签: powerbi dax

我是DAX查询的新手,并尝试创建相当于以下SQL查询的DAX查询。

SELECT Year, Company, SUM(Actual Sales) as Actual, SUM(Planned Sales) as Planned
FROM Sales
GROUP BY Year, Company

我无法在DAX中的groupby之后获取多列的聚合。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:4)

Power BI中实际上有几种方法可以进行这种聚合。以下是三种不同的选项,两种结果略有不同。

选项1:查询编辑器

在查询编辑器窗口中,选择Transform - >分组......

Group by

...并按如下所示进行配置(确保单击“高级”选项)。

Group by config

这导致以下结果。注意 - 这将取代起始表。

Group by results

选项2:措施

在常规窗口(不是选项1中使用的查询编辑器)中,单击Modeling - >新措施......

New measure

...使用以下公式创建两个度量。

Actual = SUM(Sales[Actual Sales])

Planned = SUM(Sales[Planned Sales])

创建这些度量后,可以使用所需的标题和值创建可视化(在这种情况下为矩阵)。

Measure matrix

选项3:

与选项2类似,点击建模 - >新栏目......

New columns

...使用下面的公式创建两列。

Actual = CALCULATE(
    SUM(Sales[Actual Sales]),
    FILTER(
        Sales,
        Sales[Year] = EARLIER(Sales[Year]) &&
        Sales[Company] = EARLIER(Sales[Company])
    )
)

Planned = CALCULATE(
    SUM(Sales[Planned Sales]),
    FILTER(
        Sales,
        Sales[Year] = EARLIER(Sales[Year]) &&
        Sales[Company] = EARLIER(Sales[Company])
    )
)

现在,聚合在列中,可用于报告视觉效果。

Column results