从数据到信息
从信息到洞察

了解《DAX权威指南》

有这么一本书,在英文世界中被奉为学习 DAX 的经典必读书目,权威程度超过微软官方文档。它的知识框架足够系统和全面,在广度和深度这两个层面,都是当之无愧的 NO.1。可以说读懂了这本书,你就解锁了 DAX 的所有秘密。

不过,请等一下,所有学习 Power BI 的人都需要看这本书吗?当然不是,我不想在这里贩卖焦虑,因为每个人的时间都是宝贵的,如果你只是用 Power BI 制作一些好看的图表,或者生成一个具备交互功能的报告,只要不需要用到复杂的计算逻辑,你完全可以忽略它的存在。

而一旦你对 DAX 产生兴趣,想要了解这门强大的分析语言的时候,不管是入门还是精通,这本书都是你的最佳选择。

DAX 圣经是什么

《The definitive guide to dax》中文出版用名《DAX 权威指南》,俗称 DAX 圣经,圣经不是它的原名,是国内 DAX 学习者对它内容的一种认可,从中可以一窥这本书的江湖地位,而它也确实配得上这种认可。作者 Marco Russo 和 Alberto Ferrai 是这个领域的两位权威,可以说除了微软 DAX 产品开发组之外,他们是接触和使用 DAX 最多的人,所发表的文章、论文和博客成为成千上万人学习的源泉。开发组对这两位的评价:

我们编写代码,但我们没有太多时间教人们如何使用它;他们才是传播 DAX 知识的人

两位在 Power BI 领域正式出版的的著作主要这几本

左起第二本《Introducing Power BI》介绍 Power BI 各个模块的功能和使用,带你从零开始学习这门工具。它的中文版《Power BI 权威指南》8 月份刚刚由刘钰和潘丽萍两位合作翻译出版,你可以从这里买到。

第一本《 Analyzing Data with Microsoft Power BI and Power Pivot for Excel》 和最后一本《Building data models with powerpivot in excel 2013》是 DAX 语言的入门教材,分别围绕 Power BI 和 Excel Power Pivot 这两个不同的工具进行阐述,案例也有鲜明的工具特色。第四本的中文版于 2015 年出版,个人推荐这本书作为是学习 DAX 的入门读物,原作和翻译的质量都值得信赖。

第三本 《The Definitive guide to dax》则是 BOSS 级的存在,它是目前唯一一本系统性阐述 DAX 的著作,书中的部分内容在第三本或第二本中出现过,但占比不超过 10%,也就是说绝大部分内容都是独家披露。为什么要有这么一本书?下面这段来自作者的描述是最好的注解:

每次写书我们都需要谨慎分配关于产品和关于 DAX 语言描述所占的比重。没有足够的余地让我们畅所欲言 DAX 的感觉是痛苦的。毕竟,你不可能写 1000 页关于 Power Pivot 的内容,这种体量的书对任何人都是一场噩梦。

因此,这些年来我们在出版关于 Power Pivot 和 SSAS 表格模型著作的同时,也同时编写了一本系统阐述 DAX 的著作,只不过它暂时被封存。现在,我们决定打开封印,不再纠结摘录哪一部分内容:我们将介绍关于 DAX 的所有细节,不做任何删减,这就是这本书的由来。

为什么选这本书

回答了为什么要有这样一本书,还有一个重要的问题是为什么学习 DAX 要看这本书?毕竟,DAX 看起来是一门简单的语言,它和 Excel 函数如此相似,大部分的 DAX 学习者、尤其是之前学习过其他编程语言或者查询语言的人,会习惯使用这样一种学习方式:将过去的学习方式带入,即通过案例和语法实例学习一个具体的函数,通过掌握一个个具体的函数掌握一门语言,这种方法对于学习很多语言是有效的。但恰恰是学习 DAX 的误区

归纳法

DAX 是一门强大的语言,但在强大的背后,它的一些原理很难通过归纳法(上图展示的方式)来理解。对计值上下文(The Evaluation Context)的理解需要用到演绎推理:先接触理论本身,然后通过案例加深对理论的理解。我知道许多人不习惯这种学习方式,他们更喜欢在实践中学习,先研究如何解决具体问题,然后通过不断的练习和积累,归纳出公式背后的原理。请注意,在学习 DAX 的时候,你需要逆向操作。

理论是 DAX 的基石

由于 DAX 的这种特点,使得对理论的学习变得非常重要,于是 DAX 圣经就成了唯一的选择,因为它是唯一从理论层面对 DAX 做系统阐述的书籍。第一版从 2015 年上市以来收获了无数好评,2016 年我曾经写过一篇《认识 DAX 数据分析语言》,文中的 DAX 知识体系架构图就整理自 DAX 圣经。

看到这里你可能还有疑问,我知道这本书在 DAX 领域确实很权威,但是,Power BI 不是一直宣传用鼠标拖拽一下就可以快速生成分析图表,既然这么轻松,那还有学 DAX 的必要吗?

这是个很普遍的问题,不止 Power BI,所有的自助 BI 工具都会宣传拖拽式分析的好处,拖拽式分析快速、直观、操作简单,是业务人员分析数据的福音。也是 BI 工具比编程语言高效的地方,毕竟键盘敲得再快,也没有在用户界面操作来的快。但是拖拽式分析的瓶颈也很明显,就是只能做逻辑相对简单的分析。一旦要研究复杂一些的问题,编程语言或者函数就必须介入。对于 Power BI 而言,你必须借助 DAX,所以随着使用经验的增加你会越来越发现 DAX 的重要性。

阅读 DAX 权威指南后制作的PBI报告与以往完全不同,不再是以前那种简单的拖拉拽的分析,而是可以深入业务逻辑,定义出复杂且极具价值的内容

 I have started making different Power BI dashboards after going through “The Definitive guide to DAX” book..and it is turning out to be a quite wonderful experience.

DAX 圣经第二版更新

从 2015 年的第一版到 2019 年的第二版,四年的时间 DAX 并没有太大变化,这意味着第一版的知识仍然可以信赖。那么这次更新的第二版,究竟有哪些变化呢?作者 Macro 最近发了一篇文章,对第二版更新的内容和背后的故事做了详细介绍。我简单总结了一下,供各位一窥究竟。

  • 案例更新:第二版使用的案例从第一版的 Excel Power Pivot 替换为 Power BI Desktop。
  • 变量:第一版将变量作为一个单独的章节,没有在其他章节中使用,原因是当时只有 Excel 2016 和 Power BI 才能使用变量,随着版本的更新,越来越多的人可以使用变量来简化公式和 Debug。所以第二版将变量应用到了全书的公式中。
  • 简化技术用语:第一版的高级内容面向有数据库和编程语言背景的高级用户,随着 Power BI 的普及,第二版将用户定位扩展到了普通的数据分析师,所以一些专业性较强的内容在这一版进行了简化和替换,但是内容质量和准确度并没有妥协。
  • 性能分析:DAX 性能优化章节使用的工具统一替换为 DAX Studio
  • 最佳实践:加入了作者近年来总结的典型案例和性能分析实践。
  • 筛选上下文的再描述:筛选上下文作为 DAX 的一个重要且独特的概念,文字描述起来比较抽象,第二版使用了更多的图形解释,以增强你对它的理解。
  • KEEPFILTERS:第二版明确了在内外部上下文需要取交集的时候,使用 KEEPFILTERS 函数是最佳实践。
  • Calculation Group:不同于以增加几个新的函数,Calculation Group 是自 DAX 诞生以来最大的一次功能更新,为了等待这个更新,整本书的上市时间不得不向后推迟。要知道一门语言的核心功能从诞生的那一刻起就基本确定了,能从底层原理上增加新的功能绝非易事,这也说明 DAX 自身仍然在不断的迭代。另外,我想特别说明的是,Calculation Group 有自身明确的使用场景,在这个特定场景下它可以优雅的解决过去没法解决的问题。同时,考虑到 Calculation Group 背后的复杂性,驾驭它并不容易。所以对于绝大部分用户,在 Power BI 没有支持这项功能之前,我不建议你目前在这上面花时间。

细微变化

除了以上几点,还有一些细微的变化

  • 内容重新编排,按新的章节重新组织了内容,增加了重点章节(变量、Calculate 调节器)的内容。
  • 纠正第一版的勘误和错误内容,比如 ALLSELECTED。
  • 很多人可能不知道,第一版的部分内容连一些老外都没看懂,在我们看来英语是一种语言,其实不同地区的人都有各自的语言文化,背后的细节如果感兴趣可以翻一下亚马逊第一版的书评,你会发现一些端倪。为了解决这个问题,第二版做了大量的重写,在语言方面上加入了一个专业的审校。

当你看到这篇文章的时候,第二版的翻译工作已经完成,访问下面的专区链接了解详情,欢迎下单订购

→ 访问DAX 权威指南Ⅱ专区

样例文件说明

DAX 圣经第一版案例使用官方的 Contoso 数据库,你可以从这里直接下载。书中的原理部分虽然没有提供示例文件,你可以使用下载的文件进行练习。

48
说点什么

1000
 
鼓掌微笑开心憧憬爱你色并不觉得吃瓜doge二哈喵喵思考笑哭捂脸悲伤大哭抓狂汗偷笑打脸捂眼黑线问号晕拜拜闭嘴衰咒骂ok作揖
17 评论数
31 被回复的评论
21 订阅评论的人数
 
查看最近回复
查看最热评论
  订阅本文评论  
最新 最旧 得票最多
提醒
成员
138****0022

鼓掌

成员
李小爱

第二版现在已经出版了吗 并不觉得

成员
黄玉飞

在JD,taobao上搜DAX权威指南搜到的ISBN编号: 9787121405051就是第二版的DAX圣经吗?准备入手,但是怕入错了……

游客
17764512981

三月了,还没出

游客
守望者

新书上架时间有没有确定哈 鼓掌

成员
Luck

考不考虑接受预定,这样也好确定合适的初版数量 doge

游客
守望者

圣经二出版时间有没有确定哈?

成员
跑//

终于要出来啦! 鼓掌

成员
136****9742

请问,书出来了吗,京东搜不到啊

游客
17764512981

已经12月了,还没出来

游客
正确选择

powerbi极客给了喜爱powerbi和dax的自学爱好者一个相当完备的平台。

成员
zhangyongjin

期待DAX权威第二版中文出版

成员
139****9015

老师,书出来了么?在京东里一直关注,还没看到出来。

成员
angie007

期待新书,感谢老师 开心

成员
yy813450880

希望后来的学习者能看到我的留言。我是一个没有编程基础,学东西慢,领悟性不高的人一开始只是抱着试试看的想法开了一月会员。结果现在我觉得在这个投资上是最超值的。主要以下几点:
1.文章的质量绝对是目前网上我搜到最高的。作者是不但讲解了深层原理、基础知识、高级知识运用。通过不断变化案例不同方式书写来加深对概念理解和应用。
2.对编程类通用思想的潜移默化影响(我表述不是那么贴切),作者会在文中写一些通用编程常识。这些我认为都有助于后续学习别的语言有帮助。
3.最大的惊喜以及最超出意外的收获:作者本人会认真看评论并给予回答,也不敷衍或觉得太低级的问题不予回复。我觉得这个机会是可遇不可求的,这个就像一个私人vip教师。

成员
Mia_Chan

期待高老师的第二版纸质书!

成员
注视

期待《DAX圣经》第二版纸质书早日出版。

DAX 圣经

导读

初识 DAX

DAX 基础知识

DAX 原理

DAX 高级原理

基础函数类型

迭代函数

CALCULATE 函数

CALCULATE 调节器

基础表函数

条件判断函数

查找匹配函数

时间智能函数

统计类函数

投影函数

分组/连接函数

集合函数

其他函数