DAX和Power Query(或M)之间的区别是什么?

时间:2016-09-22 07:31:35

标签: powerbi dax powerquery m

我一直在研究Power BI一段时间,当我浏览它的帮助主题时,我常常感到困惑。它们通常是指用作DAX函数或Power Query的函数和公式,但我无法区分这两者。请指导我。

4 个答案:

答案 0 :(得分:43)

M和DAX是两种完全不同的语言。

M用于Power Query(a.k.a.Get& Transform in Excel 2016)和Power BI Desktop的查询工具。它的功能和语法与Excel工作表函数有很大不同。 M是用于查询大量数据源的mashup查询语言。它包含转换数据的命令,可以将查询和转换的结果返回到Excel表或Excel或Power BI数据模型。

可以找到有关M的更多信息here并使用您最喜爱的搜索引擎。

DAX代表数据分析eXpressions。 DAX是Power Pivot和Power BI Desktop中使用的公式语言。 DAX使用函数处理存储在表中的数据。某些DAX函数与Excel工作表函数相同,但DAX具有更多功能来汇总,切片和切割复杂的数据场景。

如果您知道如何使用搜索引擎,那么DAX有许多教程和学习资源。或者开始here

实质上:首先使用Power Query(M)查询数据源,清理和加载数据。然后使用DAX分析Power Pivot中的数据。最后,使用Power BI构建数据透视表(Excel)或数据可视化。

答案 1 :(得分:2)

  • M 是该过程的第一步,将数据导入模型。

(在PowerBI中)当您右键单击数据集并选择Edit Query时,您正在使用M(也称为Power Query)。在编辑窗口的标题栏中显示了Power Query Editor的相关提示。 (但你必须知道M和PowerQuery是一回事)。另外(显然?)当你点击获取数据按钮时,这会为你生成M代码。

  • DAX 用于PowerBI桌面的报告窗格,主要用于聚合(切片和切块)数据,添加度量等。

两种语言之间存在很多交叉(例如,您可以在两者中添加列和合并表) - 有关何时选择herehere

的讨论

答案 2 :(得分:1)

将Power Query / M视为将用于在Power BI和/或Excel中格式化和存储物理表的ETL语言。然后将DAX视为在从源查询数据后将使用的语言,然后您将使用该语言计算总计,执行分析以及执行其他功能。

  • M(电源查询): 查询时转换在您提取数据时对数据进行整形
  • DAX: 内存中转换,用于在数据提取后对其进行分析

答案 3 :(得分:1)

值得一提的是重新性能优化的另一件事是,您应该“修剪”您的数据集(删除行/删除列),使其尽可能位于数据处理序列的“上游”。这意味着在Power Query中,这种操作比DAX更好。来自MS的一些其他建议:https://docs.microsoft.com/en-us/power-bi/power-bi-reports-performance