前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >DAX中与计数相关的聚合函数

DAX中与计数相关的聚合函数

作者头像
博文视点Broadview
发布于 2023-04-04 02:46:31
发布于 2023-04-04 02:46:31
4.3K00
代码可运行
举报
运行总次数:0
代码可运行

不问花开几许,只愿浅笑安然

除了求和,另一个日常工作中最常用到的聚合方式应该是计数了。DAX提供了一系列关于计数的函数。他们可以帮助我们计算表中有多少行或者某个值出现了多少次。

DAX中包含的计数函数有:

  • COUNT()函数,对列中值的数量进行计数,除了布尔型;
  • COUNTA函数,对列中值的数量进行计数,包含布尔型;
  • COUNTBLANK()函数,返回列中空单元格的计数;
  • COUNTROWS()函数,返回表中行的计数;
  • DISTINCTCOUNT()函数,返回列中值的不重复计数,包含空单元格。
  • DISTINCTCOUNTNOBLANK()函数,返回列中值的不重复计数,剔除空单元格。

一、计数与不重复计数

假设我们想看看不同产品类别中有多少种产品,并且想知道这些产品是不是多卖出去过(有交易记录)。我们就可以使用以上函数实现。在Power Pivot中建立一下度量值:

产品数量:=COUNT('产品表'[产品名称])

已销售产品:=DISTINCTCOUNT('订单表'[产品代码])

将产品类别设置成数据透视表的行标签,将以上两个度量值拖放到值区域,可以得到我们想要的计算结果。

观察办公用品中的结果可知:办公用品分类一共有8中产品,但实际有销售出去的仅有2中种,其他的产品都未出售过,需要进一步了解原因。

两个度量值使用的列是来自不同的表的,虽然他们都代表了产品名称。它们返回结果的业务意义是不同的。

我们曾经讲过普通的数据透视表无法进行非重复计数,而基于Power Pivot数据模型的数据透视表,更改汇总方式时不重复计数是可用的,其背后的原始其实是因为DISTINCTCOUNT()函数的存在。该函数对于列中的同一个值仅计算一次。

二、对行计数

COUNTROWS()函数与其他计数函数不同点之一就是它接受的参数是表。而其他计数函数接受的参数都是列。

COUNTROWS()函数对表中的行进行计数,不管行中是否有空值,都会计算一次。大多数情况下它与COUNT()函数都是可以互相替代使用的。具体选择哪个函数需要视业务情况决定。

在模型中增加以下两个度量值:

销售量:=COUNT('订单表'[产品代码])

销售量_COUNTROWS:=COUNTROWS('订单表')

将它们放在数据透视表的值区域将得到一样的结果。


 如果你想从零开始学 Power BI,可以在公众号后台回复「极简入门」,获取PowerBI入门教程;或者回复「PQ入门」,免费获取PQ实战案例教程。

欢迎关注作者新书

发布:刘恩惠

审核:陈歆懿

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
如果喜欢本文欢迎 在看丨留言丨分享至朋友圈 三连
 热文推荐  
独家!【隐秘而伟大】这群神秘的程序员,干了票大的
1024程序员节 | 国内顶尖优质原创,致敬每一位可爱的你~~
1024程序员节 | 这份“反内卷”书单请查收!
千万级高并发秒杀系统设计套路!超详细解读~~

▼点击阅读原文,了解本书详情~

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-10-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 博文视点Broadview 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
聚合函数Sum/Max/Count...
在度量值公式栏里,无论你输入'还是[,智能提示的都不会是列,而是其他已创建好的度量值,所以度量值是不可以直接引用列的。比如'咖啡数据表'中的[数量]列, 该表有近3万行,把这3万行的数据放入度量值中是没有任何意义的。度量值输出的是一个计算结果,所以我们只有用聚合函数求计算列的聚合值才有效。
公众号PowerBI大师
2019/08/07
1.3K0
聚合函数Sum/Max/Count...
PowerBI DAX 新函数 OFFSET
如果我们希望在透视表的另一列可以获取前一列的上一项的值,该怎么做呢?这个问题在以前需要做定位。而有了新的函数 OFFSET 可以简化这个过程。如下:
BI佐罗
2022/12/18
2.1K0
PowerBI DAX 新函数 OFFSET
​再谈 Power BI 分组的真实案例
之前已经简单与大家聊过 Power BI 中的分组问题了,近日朋友又问了一个实际工作中的问题,恰巧也与分组有关,便整理之后,与众位朋友共享,再谈 Power BI 分组的博大精深。
BI佐罗
2019/09/23
2.3K0
​再谈 Power BI 分组的真实案例
PP-DAX入门:行上下文的困惑——聚合函数怎么了?
大海:这里有一个重要的知识点,即在Power Pivot里,聚合函数是会忽略行上下文的。所以,SUM函数求的是整列的和。
大海Power
2021/08/30
6770
大数据分析工具Power BI(七):DAX使用场景及常用函数
Power BI中DAX函数非常多,功能非常强大,下面结合一些实际场景来讲解DAX一些常用的函数,这些场景包含求和、计数、相除、排序、累计、环比、同比,为了更方便后续的可视化展示数据,我们新创建可视化展示的页面,创建一个新表存储后续展示的度量值,具体操作如下:
Lansonli
2023/03/27
10.8K0
大数据分析工具Power BI(七):DAX使用场景及常用函数
PowerBI DAX 重构系列:用1个度量值代替100个 实现 动态多维度动态算法动态总计(下篇)
在《PowerBI DAX 重构系列:用1个度量值代替100个 实现 动态多维度动态算法动态总计(上篇)》我们最终来到:
BI佐罗
2019/09/23
2.7K0
PowerBI DAX 重构系列:用1个度量值代替100个 实现 动态多维度动态算法动态总计(下篇)
DAX学习分享:十条经验
很多人说国内的学习资料太少,在学习的过程中坎坷不断,我与大多数PowerBI学习者一样,一边读外文的博客摸索一边铺路,在不断尝试和与人分享的过程中,总结了个人认为最宝贵的十条DAX学习经验,分享给读者。
公众号PowerBI大师
2019/08/07
3.4K0
DAX学习分享:十条经验
DAX 概念
授之以鱼不如授之以渔,有关DAX的概念性介绍我特意地拖到这个章节统一来讲,以免在前面穿插让大家混淆。DAX是Data Analysis Expression的缩写,即数据分析表达式,DAX公式同Excel一样,公式繁多可以编汇成一部字典,我们不可能一夜之间把这本字典背下来,在这种情况下教会大家原理和学会查字典的方法尤为重要。
公众号PowerBI大师
2019/08/06
1.7K0
DAX 概念
计算列与度量值
Power BI虽然源于Excel,但毕竟是不同的产品。我们要试图抛弃Excel中单元格思维的方式,在BI中的表是以列式存储,没有Excel中以A1单元格定位的形式,对于习惯于Excel的你可能要适应一段时间,不过这是件好事情,因为这样的方式使公式易于阅读理解。
公众号PowerBI大师
2019/08/06
2.4K0
计算列与度量值
一个度量,是怎样炼成的? | DAX重要思路
前面,我在文章《DAX的核心,其实只有4个字!》里提到,DAX核心思想,就是“筛选、计算”四个字,当然,这个总结非常抽象,接下来,我会用一个又一个的例子来给大家具体讲,大家将慢慢体会到,几乎所有的度量都紧紧围绕这个思想而展开。
大海Power
2022/04/11
6950
一个度量,是怎样炼成的? | DAX重要思路
Power BI: 理解VALUES和FILTERS函数的区别
文章背景: 最近在学习DAX权威指南第10章,使用筛选上下文。其中提到,FILTERS是一个类似于VALUES的函数,但二者有一个重要的区别——VALUES返回筛选上下文中的可见值;FILTERS返回被当前上下文筛选的值。
Exploring
2023/08/17
8460
Power BI: 理解VALUES和FILTERS函数的区别
阅读圣经丨关于DAX
最近,有很多小伙伴和白茶在聊天,也会涉及到一些度量值的编写,经常能遇到说大脑当机的情况。比如说明明自己知道如何去写,但是大脑思维却停止运转,想不起来的情况,话到嘴边却说不出,这种感觉太难受了。
PowerBI丨白茶
2021/09/01
6350
阅读圣经丨关于DAX
Power BI: 理解上下文转换
Calculate是目前DAX语言中最重要、最有用同时也是最复杂的函数,值得单独成章进行介绍。涉及Calculate函数的内容很多,这里介绍的是行上下文转换。
Exploring
2023/08/17
1.4K0
Power BI: 理解上下文转换
PowerBI公式-Filter函数
度量值工作的两大核心步骤是筛选和计算,筛选函数是制定计算的范围,聚合函数的用途是计算。如果你能够领悟第一阶段学习的筛选和聚合共10个函数以及上下文的概念,你就掌握了度量值和DAX的精髓。左手漏斗筛选器,右手智能计算器,随心所欲的设计你的筛选和计算,Master of Power BI指日可待。这一节我们就来学习最强大的筛选函数Filter。
公众号PowerBI大师
2019/08/07
6.9K0
PowerBI公式-Filter函数
DAX 2 - 第一章 什么是 DAX
本文来自社区伙伴对《DAX 权威指南(第二版)》的学习笔记,有问题可以留言或联系BI佐罗修改,感谢你的支持。
BI佐罗
2020/04/27
4.8K0
从工作表函数到DAX!
👆关注“博文视点Broadview”,获取更多书讯 作者:ExcelHome创始人周庆麟 来源:《DAX权威指南》推荐序 在ExcelHome技术论坛上,经常会有这样的讨论话题:你希望下一个版本的Excel增加什么功能? 在2006年以前,很多人都说,希望Excel能提高单表处理数据的数量上限,最好能像Access那样可以建立多表查询。 自Excel 2007问世后,单表处理数据的量,从65,536行增加到了1,048,576行。 于是,很多人表示相当满意,但还是有一些人表示,只是简单增加单表的行数不够
博文视点Broadview
2023/05/06
1.1K0
从工作表函数到DAX!
Extreme DAX-第4章 上下文和筛选
编写 DAX 公式时要掌握的核心概念是上下文。DAX 作为一门动态数据分析语言,与 Excel 函数、SQL 查询 和 Power Query 脚本有着根本不同的原因就在于上下文的概念。以上所述的所有其他语言的公式只会在数据发生变化时才会返回不同的结果(除了一些例外情况,例如使用参数时),但是单个 DAX 公式就可以同时提供多个不同的结果,具体取决于您使用它的位置和方式,也就是:上下文。
陈学谦
2022/05/24
5.9K1
Extreme DAX-第4章 上下文和筛选
将Power Pivot模型数据取值到单元格中(第2节)
Excel Power Pivot俗称超级透视表,具有强大的建模能力。一般情况下,Power Pivot的模型在Excel界面以数据透视表或数据透视图展现。但是,这种展现方式比较单一,无法实现复杂结构报表提取模型数据的需求。
wujunmin
2021/09/07
1.3K0
将Power Pivot模型数据取值到单元格中(第2节)
内行才能看懂的 PowerBI DAX 引擎重大更新来了
2019年3月1日,在SqlBits大会上,微软宣布DAX引入一项重大更新:Calculation Group(暂且不做翻译)。这项更新将对PowerBI及SSAS均构成重要影响。为此,微软SSAS团队官方,SQLBI.com以及Chris Webb分别在各自博客记录这一内容。(后两者为SSAS领域国际顶级专家博客)
BI佐罗
2019/09/23
4.2K0
内行才能看懂的 PowerBI DAX 引擎重大更新来了
Extreme DAX-第3章 DAX 的用法
Power BI 模型的真正强大之处在于通过使用 DAX 语言进行计算。虽然许多 Power BI 用户专注于模型并试着完全避开使用 DAX,但是除了最简单的基础聚合运算以外,其他所有的计算都需要通过 DAX 来实现。而且,你迟早会在 Power BI 中遇到更复杂的计算需求。根据我们的经验,典型的情况会是:你精心制作的一个 Power BI 报告初稿,会引出有关这些数据的越来越多、越来越复杂的问题。
陈学谦
2022/05/24
7.4K0
Extreme DAX-第3章 DAX 的用法
相关推荐
聚合函数Sum/Max/Count...
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验