深入了解 DAX 中的过滤

您是否想过在 DAX 表达式中应用过滤器时会发生什么?好吧,今天我将带您深入探讨这个引人入胜的主题,并通过示例帮助您学习一些新的、令人惊讶的东西。深入研究 DAX 中的过滤一文首先出现在《走向数据科学》上。

来源:走向数据科学

在开发 DAX 表达式(例如 DAX 度量)或编写 DAX 查询时,我们始终使用过滤器。

但是当我们应用过滤器时到底会发生什么?

这篇文章正是关于这个问题的。

我将从简单的查询开始,并添加变体来探索幕后发生的情况。

我使用 DAX Studio 和显示每个查询的服务器计时的选项。

如果您想了解有关此功能以及如何解释结果的更多信息,请阅读本文末尾参考部分中的第一篇文章。

让我们从基本查询开始:

评估

计算表(

SUMMARIZECOLUMNS('产品'[品牌名称]

,"在线销售额",[在线销售额合计]

)

当我们激活服务器计时并执行查询时,我们会获取执行统计信息以及获取数据所需的存储引擎 (SE) 查询:

正如您所看到的,我们只需要一个存储引擎 (SE) 查询即可检索结果。

查询仅在 47 毫秒内完成,并且几乎完全由 SE 提供服务 (95.7%)。

SE 在查询上花费的时间越多越好,因为它是从数据存储和表中检索数据的组件。

此外,SE 可以使用多个 CPU 核心,而公式引擎 (FE) 只能使用一个。我们无法像使用 SE 查询那样轻松地检查 FE 中发生的情况。

您可以在上面提到的文章中了解更多关于这两个引擎之间的区别。

简短说明:

几个月前,我在这里写了一篇标题非常相似的文章。但是,虽然那个只是关于具有时间智能功能的日期过滤器,但这个却更深入了兔子洞。

这比那个更通用。

如果您错过了,我将有关当前主题的文章链接和其他资源添加到下面的参考资料部分。添加简单过滤器接下来,我们将产品颜色红色的简单过滤器添加到查询中:这是仅限于产品颜色红色的查询和结果:当我们查看查询统计信息时,我们会看到:让我们试试这个: