首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

内行才能看懂的 PowerBI DAX 引擎重大更新来了

2019年3月1日,在SqlBits大会上,微软宣布DAX引入一项重大更新:Calculation Group(暂且不做翻译)。这项更新将对PowerBI及SSAS均构成重要影响。...当我们需要这些基础度量值与一些条件关联时,就会产生新的度量值,如时间有关的组合,包括: MTD,QTD,YTD,PY,MTD PY,QTD PY,YTD PY,PY FY,MTD YOY%,QTD YOY...而在今天这里,却是后者,确实是微软缺失了一项在 DAX 中解决复用问题的特性。再重复一次:如何DAX中复用复杂逻辑,不需要编写新的度量值,却可以从基本度量值派生新的度量值。怎么破?...(详细原理已经在Excel120的《DAX基础》中给出,不再赘述。)这里很明显会涉及到三个问题: 如何选出当前的度量值:SELECTEDMEASURE。...使用 Tabular Editor 来打开上述项目模型文件,通过 Tabular Editor 的能力来创建 calculation group。 部署发布项目。

4K20

PowerBI: 使用计算组功能计算不同度量值的同比、环比

(5)右键点击Model,选择Create,弹出: 点击Calculation Group创建一个计算组,如下: 创建的计算组包括如下几个部分: New Calculation Group Calculation...Items Name Ordinal 假定我们想要得到如下的效果图: 这里需要定义环比同比这两种计算逻辑。...(9)将更改保存至DAX引擎。 点击上图中的图标,将更改保存至已经连接的数据库(也就是DAX引擎)。 (10)回到PowerBI desktop界面,对所创建的计算组进行数据刷新。...(11)计算组已经创建完毕。按照下图拖拽出需要的矩阵图,效果如下: 对于矩阵的值,这里只放置了一个度量值(人均销售额)。而计算组按照事先定义的两个计算逻辑(环比同比)进行了计算。...参考资料: [1] Power BI计算组应用(https://www.jianshu.com/p/0f309922c469) [2] PowerBI DAX 计算组 基础篇 [3] [通过计算组动态切换指标格式

3.1K22
您找到你想要的搜索结果了吗?
是的
没有找到

PowerBI DAX 计算组 基础篇

随着 PowerBI 在2020.7月的发布,迎来一个重要的功能:计算组(Caculation Group)。 我们会用几个篇幅从基础到高级来给出计算组的所有使用方式内幕,供大家使用。...Group)。...所以,对 DAX 引擎的很多快速编辑批量修改在 Tabular Editor 里进行总是几乎可以操控 DAX 引擎的最新特性。...点击创建一个计算组,如下: ? 创建的计算组必须是如上结构,里面包括: New Caculation Group Calculation Items Name Ordinal 这样的结构。...同样道理再创建名为 Growth% 的计算项,如下: ? 以及创建名为 YTD 的计算项,如下: ? 这样就创建完毕。 将更改保存至 DAX 引擎 将鼠标移动到这些新建立的项目上,可以看到: ?

3.8K30

大数据分析工具Power BI(七):DAX使用场景及常用函数

DAX使用场景及常用函数 Power BI中DAX函数非常多,功能非常强大,下面结合一些实际场景来讲解DAX一些常用的函数,这些场景包含求和、计数、相除、排序、累计、环比、同比,为了更方便后续的可视化展示数据...2、使用多行卡图进行展示结果 以上创建度量值可以随着我们可视化指标的不同而变化,例如,统计不同套餐的营收金额,统计不同商圈的营收金额,都可以使用创建的该度量值。...:COUNTCOUNTA,两者都可以对某一列进行计数,用法上一样,区别为COUNTA可以对True或者False列分别统计TrueFalse的数量,所以使用更加广泛。...CALCULATE函数是DAX函数中最重要和常用的函数,主要功能是根据指定的条件对数据进行筛选然后按照指定的表达式进行计算,找出满足条件的数据,其用法如下: CALCULATE(表达式,[筛选器1],[..."季度""月份"设置为列,在度量值表中将刚刚创建的"年累计营收"设置为值,绘制可视化图如下: 按照以上同样的方式,创建"季累计营收""月累计营收"度量值,并输入对应的度量DAX公式为: TOTALQTD

8.3K32

PowerBI 将支持度量值爆炸模式 颠覆将再度来袭

也就是如何重复利用包括按时间计算的所有逻辑。来支持度量值爆炸,或者说不必爆炸,让度量值维持在原有的水平。...还削弱了能力;为了弥补计算逻辑复用的缺失,在新版本中,将加入 Calculation Group (可翻译为:计算组或组计算)的概念。...值得注意的是,这里面所涉及的三个非常重要的DAX函数已经在PowerBI中存在了,那么PowerBI具备这种特性也将是一个非常理所应当的事情。...总结 从 PowerBI 2019的4月更新来看,PowerBI正在不断加强DAX的位置,未来也许是 DAX驱动可视化 的,DAX 除了可以增强模型,如组计算;也增强了可视化的可能性,在此前有大量文章已经做了深入的讨论...—— 参考:内行才能看懂的 PowerBI DAX 引擎重大更新来了

1.5K10

【大招预热】—— DAX优化20招!!!

使用变量而不是在IF分支内重复测量 由于度量是连续计算的,因此[Total Rows]表达式将计算两次:首先用于条件检查, 然后用于真实条件表达式。...它们是必需的,因为如果查询未获得所需的结果,则FIND()SEARCH()返回错误。 IFERROR()ISERROR()函数强制Power BI引擎对每一行执行逐步执行, 以检查错误。...DIVIDE()SELECTEDVALUE( )函数在内部执行错误检查并返回预期结果。 您始终可以使用DAX表达式,使其永远不会返回错误。 使用DIVIDE()代替/ /如果分母为零,则引发异常。...如果度量定义使用诸如AddColumns()之类的迭代函数,则Power BI将创建嵌套 的迭代,这会对报表性能产生负面影响。...使用COUNTROWS而不是COUNT: 使用COUNT函数对列值进行计数,或者我们可以使用COUNTROWS函数对表行进 行计数。只要计数的列不包含空白,这两个函数将达到相同的结果

3.9K30

PowerBI DAX 模板库来了

虽然业界已经有了很多学习 DAX 的书籍,但学习毕竟是需要时间的,而且是可能携带很多错误的。在这个背景下,如何满足一个核心诉求就一直在那里: 如何让单纯的业务专家零基础快速构建业务逻辑。...先预览 为此,我们推出了 PowerBI 的外挂工具:DAX Pro。如下: ? 从界面不难看出,该工具目前(不表示未来)可以帮助使用者直接通过拖拽来创建度量值。...其中,建模分析是核心,需要的技术工具其实是 PowerBI 的底层引擎,不妨称为 DAX 引擎(实际名字不重要)。 DAX 公式是使用者对 DAX 引擎发出命令的唯一方式。...不会写度量值的人,用了这个工具创建度量值,也可能是错的。 (日期表问题) 翻译糟糕,理解复杂。 无法加入更多的度量值模板。 我们说 PowerBI 的界面产品组还是有很大空间可以更加贴近普通用户的。...我很触动,因为对于某些伙伴来说,他也许真的不应该花费大量精力学习 DAX,他要做的就是一件事:用现成结果。 所以,Create Value 非常重要。

1.9K20

国际水准,中国首款重量级PowerBIDeskTop外部工具问世

,并新增了好几大更棒的功能如更新PowerBI模型、创建扩展度量值等。...本功能除了核心的DAX查询,还将对查询的周边功能进行开发,自动获取当前PowerBIDeskTop最近的DAX查询,清洗DAX查询(将自动获取到的DAX查询多余的查询条件剔除)、格式化DAX查询,保存DAX...批量创建扩展度量值 在数据建模过程中,对成套的扩展度量值,此时可以一键生成,无需再一个个繁琐创建。...例如只需创建基础度量值如销售额,其他同比、环比、YTD、MTD等一系列指标都可以使用度量值模板方式批量创建创建过程中,还自动继承基础度量值的显示格式、存放表位置等,非常贴心。...最后不落俗地提供了DAX格式化功能,使用DAXFormater接口,DaxStudio、Tabular Editor返回结果一致,并仅单次只格式化一个有必要的格式化的DAX表达式,保护接口不负载运作,

3K20

中国首款重量级PowerBIDeskTop外部工具问世

,并新增了好几大更棒的功能如更新PowerBI模型、创建扩展度量值等。...本功能除了核心的DAX查询,还将对查询的周边功能进行开发,自动获取当前PowerBIDeskTop最近的DAX查询,清洗DAX查询(将自动获取到的DAX查询多余的查询条件剔除)、格式化DAX查询,保存DAX...批量创建扩展度量值 在数据建模过程中,对成套的扩展度量值,此时可以一键生成,无需再一个个繁琐创建。...例如只需创建基础度量值如销售额,其他同比、环比、YTD、MTD等一系列指标都可以使用度量值模板方式批量创建创建过程中,还自动继承基础度量值的显示格式、存放表位置等,非常贴心。...最后不落俗地提供了DAX格式化功能,使用DAXFormater接口,DaxStudio、Tabular Editor返回结果一致,并仅单次只格式化一个有必要的格式化的DAX表达式,保护接口不负载运作,

3.9K40

全球首发,PBI催化剂更新,PowerBI参数字段表再爱多一点,批量创建,纯界面零代码,Excel数据源一键生成。

,并新增了好几大更棒的功能如更新PowerBI模型、创建扩展度量值等。...本功能除了核心的DAX查询,还将对查询的周边功能进行开发,自动获取当前PowerBIDeskTop最近的DAX查询,清洗DAX查询(将自动获取到的DAX查询多余的查询条件剔除)、格式化DAX查询,保存DAX...批量创建扩展度量值 在数据建模过程中,对成套的扩展度量值,此时可以一键生成,无需再一个个繁琐创建。...例如只需创建基础度量值如销售额,其他同比、环比、YTD、MTD等一系列指标都可以使用度量值模板方式批量创建创建过程中,还自动继承基础度量值的显示格式、存放表位置等,非常贴心。...最后不落俗地提供了DAX格式化功能,使用DAXFormater接口,DaxStudio、Tabular Editor返回结果一致,并仅单次只格式化一个有必要的格式化的DAX表达式,保护接口不负载运作,

2.1K30

王者回归,PBI催化剂2.0发布,回归初心,个人永久性免费使用全部功能

,并新增了好几大更棒的功能如更新PowerBI模型、创建扩展度量值等。...本功能除了核心的DAX查询,还将对查询的周边功能进行开发,自动获取当前PowerBIDeskTop最近的DAX查询,清洗DAX查询(将自动获取到的DAX查询多余的查询条件剔除)、格式化DAX查询,保存DAX...批量创建扩展度量值 在数据建模过程中,对成套的扩展度量值,此时可以一键生成,无需再一个个繁琐创建。...例如只需创建基础度量值如销售额,其他同比、环比、YTD、MTD等一系列指标都可以使用度量值模板方式批量创建创建过程中,还自动继承基础度量值的显示格式、存放表位置等,非常贴心。...最后不落俗地提供了DAX格式化功能,使用DAXFormater接口,DaxStudio、Tabular Editor返回结果一致,并仅单次只格式化一个有必要的格式化的DAX表达式,保护接口不负载运作,

4.7K20

PowerBI 2018年11月更新 支持PowerBI工程式开发

参考:PowerBI 实现中国式复杂报表设计 另一个巨大的缺陷是:无法针对某些列单独设置颜色。 在有了按字段设置颜色后,看看优化后的结果: ?...现在,这项高级控件的条件格式功能对任何视觉对象均可用,如下: ? 我们先建立一个度量值: ? 然后,做一个默认图如下: ? 使用赋值字段的条件格式后: ? 完美。这可以用于各类视觉对象,如: ?...这种长命名方式将帮助建模设计师一眼明晰当前度量值会如何工作。...值得一提的是:PowerBI的任何视觉对象都可以转为数据汇总表结构,而这个数据汇总表来自不同字段度量值的组合运算效果,这个表其实是一个汇总表(对应于Tableau中的表计算),由于PowerBI并不提供表计算...,而作为补偿,PowerBI直接提供DAX进行全局(跨越所有数据,跨越所有粒度)计算,因此也就消除了表计算行级别表达式的概念。

4.1K20

PowerBI 打造全动态最强超级矩阵

PowerBI 的图表是如何被展示的 很多初学者都会好奇一个问题,那就是:PowerBI 图表背后是什么?并且经常犯一个认知错误,那就是:把创建好的一个度量值拖拽到图表的轴上,并发现无法成功。...选择列 分组 组内汇总 返回这个查询结果PowerBI 表格的本质是由 DAX 完成上述等价的 SQL 的5个步骤。而且更加简单。...其次,由于 PowerBI 推出了可以直接用度量值计算文本颜色,就可以解决文本标色的问题: 这里截取一段标色逻辑: 有了 变体数据类型 度量值设置格式 就解决了原有的不可能问题。...动态度量值的调整。 … 我们使用图标来表示信息: 我们处理折叠展开后的排名: 折叠起来的时候不应该显示排名。实现方法: 这是 DAX 专门为了处理矩阵内计算而刚更新不久的函数。...DAX 最顶级复杂矩阵 所有思路细节已经在本文全部呈现。

14.5K43

这是不是 PowerBI 原生作图的最高境界 - 案例:对比积累分析图

对于其中的某个图,可能需要施加 DAX 驱动可视化。这里我们做一些重点说明。 例如: ? 这个图的特别之处在于: 正数负数的颜色是不同的。...而如果你还想用上述的条件可视化来设置正负数就会发现: ? 根本没有这个设置机会,没有条件颜色来设置,这时候就需要祭出大杀器 DAX 驱动可视化了。...保持动态稳定性 现在来看最重要的一点叠图必要条件:保持动态稳定性。 那就是不论用户如何操作,图表都应该完美显示,整体的布局不会肢解掉。 例如: ?...原生视觉对象可以做的,那么本文就展示了一定可以做出来的步骤方法; 如果本文展示的方法无法实现某图,则该图是无法通过 PowerBI 原生视觉对象制作的。...在作图时,可采用 DAX 驱动可视化 的思想。 由于在现实中将大量出现这种模式,为此,我们需要一套更加大的项目框架来管理,就是 MVC 设计思想框架。

2.4K21

PowerBI 7月更新 全面支持图标 酷炫来袭

本月主要更新包括: 报告方面 表矩阵的图标集 规则对条件格式的支持百分比 现在新的筛选器面板正式发布 在散点图上使用播放轴时支持数据颜色 使用相对日期下拉切片器时性能优化 分析方面 关键影响因素分析增加计数...表矩阵的图标集 可以在表或矩阵的度量值上选择条件格式,选择图标,如下: 如下: 现在就可以像Excel中一样来设置图标了,效果如下: 这其实是我们一直期待的功能,当然,还可以隐藏值,只显示图标,例如:...规则对条件格式支持百分比 可以根据数字或百分比设置条件格式: 以及: 这样可以更容易地设置某些相对规则。 散点图播放时可以显示数据颜色 散点图可以这样: 具体的经典案例,可参考:GDP赛跑案例。...使用相对日期下拉切片器时性能提升 用用就知道了。 关键影响因素分析加入计数 可以看到,每个圆球的边缘有一个圆环,圆环的大小表示了计数,并可以按照影响或计数来进行排序。...阅读《圣经2》的感觉: 通过阅读《DAX权威指南2》,我们可以看出作者几乎用更多更新的案例讲解方式为我们重新诠释演绎了DAX的故事。后续我们会专门分享相关内容。 以上就是本月的所有内容了。

1.5K40

PowerBI DAX MVC 设计模式 导论

DAX MVC 根据前面的描述,可以有: 其中,箭头表示依赖关系,为了便于理解,你可以读作:会用到。例如:度量值会用到数据模型;可视化会用到数据模型度量值。...,定义业务逻辑; 对于最终的可视化来说,数据模型也许不是直接来源,而是视图模型,例如: 年龄分组,就不是数据模型中的表,而完全是为了展现而创建的数据,属于视图模型; 为了展现而写的度量值,就是展现度量值...如何PowerBI 中实现 DAX MVC 有了上述的理论讨论说明,现在可以在 PowerBI 中进行实现。...让视图仅仅依赖于视图模型展现度量值,就解除了这种耦合关系。 总结 本文引出了 PowerBI DAX MVC 架构设计模式,其用意是彻底工程式地解决复用问题。...; 视图: 用户看到的可视化部分; 依赖于视图模型,为视图提供维度; 依赖于展现度量值,为视图提供计算结果

2.5K22

PowerBI 2018年9月更新 深度解读分级聚合

DAX表查询的角度来看,散点图点阵图确实有差异,点阵图的本质是对一个高粒度维度一个度量值进行SUMMARIZECOLUMNS计算;而散点图的本质是对一个低粒度维度按两个度量值进行SUMMARIZECOLUMNS...仔细观察上图,可以看出在聚合运算时,SUM实际将以SUMX执行,而SUMX作为迭代器将对事实表做全表逻辑扫描,并形成左外连接结构以返回查询结果。...由于很多情况我们可以知道用户要如何操作或可能的操作,就可以将对海量事实的聚合计算预先保存在PowerBI模型中使上述规则可以命中聚合以直接返回结果。...如果PowerBI的存储无法支持查询,则转为发送至数据源计算。 以上,就是聚合的全部细节。 验证聚合的执行 接下来,我们验证下聚合是不是真的按照我们所想的顺序执行了。...查询的结果为: 实验4 - 命中PowerBI引擎的聚合并按高优先级执行 如何可以同时命中不止一个聚合,则将按高优先级类执行

2.9K20

PowerBI DAX 重构系列:用1个度量值代替100个 实现 动态多维度动态算法动态总计(下篇)

前情回顾 在《PowerBI DAX 重构系列:用1个度量值代替100个 实现 动态多维度动态算法动态总计(上篇)》我们最终来到: 现在的问题是:不光只有销售额同比增长率这一个度量值要顾及,我们要顾及包括...推广到动态维度指标 维度建模 理论是PowerBI可以主要参考的一种理论模型,当然在如今完全按照维度建模理论来玩PowerBI是不能完全适应的。...全动态度量值的编写结果很可能超过几十行甚至100行DAX,任何修改都会影响使用该度量值的所有地方。当然,如果有足够好的DAX写作结构,这并不算太大的问题。...上篇重点描述了总计行与全部;下篇则重点描述如何实现全动态的度量值来提升可复用。在实际中,仍然涉及远超过文章中记录的复杂细节。...可以看出,PowerBI可以拿来做做图,也可以打造复杂而优美的系统。如果有人说:这两篇充分看出PowerBI是程序员做的。非也,即使如此,程序员也是必要非充分条件

2.5K21

一步一步教你制作销售业绩分析报告

2、使用DAX函数创建日期表   DAX函数创建日期表的方式网上有很多种,这里我就介绍最简单的两种方式:CALENDARTAUTOCALENDAR函数构建日期表。   ...小结:使用DAX函数创建日期表最大的好处不用外置表格,不用担心文件路径发生改变。这里只是展现了PowerBI DAX函数创建日期表的两种方式。...在可视化面板中拖放日期表中年,月字段销售明细表中的本期销售业绩去年同期的销售业绩,来展现效果查看验证度量值是否取数准确。 ? 计算好本期销售业绩去年同期销售业绩后,开始新建同比度量值。...前面我们也提到过按月进行计算同比数据有时候我们需要查看累计同比数据,举个例子:业务部门需要将1-6月半年的数据去年的1-6月累计数据进行对比分析,这个时候我们只需要将销售相关度量值替换为累计销售额。...4、制作销售业绩完成率图表 PowerBI对表格的操作非常灵活,这里我们就已同比环比为例,首先拖放相应字段到表格 ? 方法一、按色阶设置同比环比的背景色。步骤:选择同比,条件格式,背景色 ?

5.1K21

PowerBI」丢弃SSDT选择TabularEditor成为你的首选建模开发工具(中)

、计算列、修改属性信息如数字格式、显示文件夹等,亦可以批量筛选出指定符合条件的内容。...根据基础度量值批量生成衍生度量值 一般情况下,我们会先创建一堆基础的度量值如销售量、销售额、成本额等。这些函数都比较简单,都是直接求和、计数等即可。...创建完这些基础的度量值,想求同比、环比、历史、当年、当季、当月累计等指标时,因其主要是度量值的引用的不同,其他部分都相同,所以可以利用脚本来完成。...在当前情况下,导出的结果,因为DAX函数有制表符换行符之类的存在的原因,导出来是错位的。...执行完的效果 导入操作 导入操作要求比较严格一些,首列作为标识列是不能修改的,并且不能新增操作,只能修改原来的信息,如下图修改度量值的名称(修改度量值名称是高危险操作,因度量值可能是中间度量值,其他度量值对其有引用

1.6K30
领券