今天我们来学习一个新的表函数,SUMMARIZE函数是DAX中的一个函数,它可以根据一列或多列对数据进行分组,并且可以使用指定的表达式为汇总后的表添加新列,形成一张新表。

一:基础语法

SUMMARIZE函数的语法是:
SUMMARIZE (表, 分组列1 [, 分组列2]… [, 名称, 表达式]…)
其中:
表,是任何返回数据表的DAX表达式。
分组列,是一个或多个用于创建分组的列的名称,这些列必须在表或与表相关联的表中存在。这个参数不能是一个表达式。
名称,是给汇总列或新建列的名称,用双引号括起来。
表达式,是任何返回单个标量值的DAX表达式,这个表达式会在每一行/上下文中多次求值。

二:案例举例

2.1 数据源及简述

如果经常使用pq的小伙伴,应该对分组依据这个功能很熟悉,其SUMMARIZE函数和分组依据功能一致。需要对照学习的朋友可以去下面链接,学习pq分组依据模块

https://www.cnblogs.com/simone331/p/17138143.html

今天的案例数据源如下所示:

2.2  具体操作

首先,由于是表函数,我们点击新建表,输入对应的dax

这里,我们的第一个需求是:分产品去统计销售金额

度量值构造如下:

简单解释一下下面的dax,上面我指定了数据源表为”分组依据数据源”表,根据表中的”商品”列进行分组,新增一列名为”商品销量”的列,列中的值为数据源表中的销售金额列的总和。

如果我现在新增一个需求,现在需要分门店属性、分产品统计销售金额呢?只需在第二参数,新增一个统计维度即可。度量值构造如下:

分门店属性分产品统计销售金额表 =
SUMMARIZE (
'分组依据数据源',
'分组依据数据源'[门店属性],
'分组依据数据源'[商品],
"商品销量",
CALCULATE (
SUM ( '分组依据数据源'[销售金额] )
)
)

三:总结

从上面的例子可以看出,SUMMARIZE可以让我们指定汇总的目标表,分组的依据列,以及新增字段去统计前面所选的依据列的值(这里可以是表达式),功能是相当强大的。

后续会有智能文本框的相关实例(智能显示TOPN文本信息),来进一步结合实例讲解SUMMARIZE函数。

如果本文有帮到你,请点赞、转发、收藏,感谢!我是simone,期待下次分享。

#Powerbi 1分钟学会,SUMMARIZE函数,分组汇总并新建表的更多相关文章

  1. 10分钟学会Python函数基础知识

    看完本文大概需要8分钟,看完后,仔细看下代码,认真回一下,函数基本知识就OK了.最好还是把代码敲一下. 一.函数基础 简单地说,一个函数就是一组Python语句的组合,它们可以在程序中运行一次或多次运 ...

  2. 五分钟学会generator函数

    什么是generator函数? 常规函数只会返回一个单一值(或者不返回任何值). 而 Generator 可以按需一个接一个地返回("yield")多个值.它们可与 iterabl ...

  3. 【译】10分钟学会Pandas

    十分钟学会Pandas 这是关于Pandas的简短介绍主要面向新用户.你可以参考Cookbook了解更复杂的使用方法 习惯上,我们这样导入: In [1]: import pandas as pd I ...

  4. tidyverse|数据分析常规操作-分组汇总(sumamrise+group_by)

    | 本文首发于 “生信补给站” https://mp.weixin.qq.com/s/tQt0ezYJj3H7x3aWZmKVEQ 使用tidyverse进行简单的数据处理: 盘一盘Tidyverse ...

  5. 5分钟学会使用Less预编译器

    5分钟学会使用Less预编译器 Less是什么? LESS CSS是一种动态样式语言,属于CSS预处理语言的一种,它使用类似CSS的语法为CSS赋予了动态语言的特性,如变量.继承.运算.函数等,更方便 ...

  6. 【grunt第二弹】30分钟学会使用grunt打包前端代码(02)

    前言 上一篇博客,我们简单的介绍了grunt的使用,一些基础点没能覆盖,我们今天有必要看看一些基础知识 [grunt第一弹]30分钟学会使用grunt打包前端代码 配置任务/grunt.initCon ...

  7. 《量化投资:以MATLAB为工具》连载(2)基础篇-N分钟学会MATLAB(中)

    http://www.matlabsky.com/thread-43937-1-1.html   <量化投资:以MATLAB为工具>连载(3)基础篇-N分钟学会MATLAB(下)     ...

  8. 《量化投资:以MATLAB为工具》连载(1)基础篇-N分钟学会MATLAB(上)

    http://blog.sina.com.cn/s/blog_4cf8aad30102uylf.html <量化投资:以MATLAB为工具>连载(1)基础篇-N分钟学会MATLAB(上) ...

  9. Grid分组汇总

    Ext.onReady(function () {                Ext.define('personInfo', {                    extend: 'Ext. ...

  10. 8第八章CTE递归及分组汇总高级部分(多维数据集)(转载)

    8第八章CTE递归及分组汇总高级部分(多维数据集) 这里贴图太麻烦...算了 UNION 等集合操作符: UNION 等以第一个 SELECT  的 列明 作为 整个结果集的列明,整个结果集 唯一认可 ...

随机推荐

  1. DevOps发布策略简介

    简介: DevOps追求更短的迭代周期.更高频的发布.但发布的次数越多,引入故障的可能性就越大.更多的故障将会降低服务的可用性,进而影响到客户体验.所以,为了保证服务质量,守好发布这个最后一道关,阿里 ...

  2. 2019-11-29-dotnet-remoting-使用事件

    title author date CreateTime categories dotnet remoting 使用事件 lindexi 2019-11-29 10:20:1 +0800 2018-2 ...

  3. 【VMware vCenter】连接和使用vCenter Server嵌入式vPostgres数据库。

    vCenter Server 早期支持内嵌(embedded)和外部(external)数据库,内嵌数据库就是vPostgres,基于VMware Postgres数据库(PostgreSQL数据库) ...

  4. go 操作 Excel

    文档地址: https://xuri.me/excelize/zh-hans/ package main import ( "fmt" "github.com/xuri/ ...

  5. 06. rails gem 安装mysql

    修改Gamefile Gamefile 里添加 gem 'mysql2' 执行命令行 bundle 可以看到下图片上已经安装好依赖了 修改配置文件 修改config/database.yml文件 # ...

  6. 虚拟机中安装mysql 完整教程( CentOS7 版本)

    一.检查是否安装了Mysql Yum检查 yum list installed | grep mysql 安装则直接删除 yum remove mysql-community-client.x86_6 ...

  7. MySQL之横纵表转换

    sql行列转换(纵表和横表间的转换) 纵表 横表 纵转横 需要的知识点: group by,姓名有重复,使用这个按姓名进行分组 case...when...then...else...end 相当于s ...

  8. NFS共享文件

    NFS共享文件 服务端 安装NFS [root@localhost www] yum -y install nfs-utils rpcbind 创建需要共享的文件夹share [root@localh ...

  9. 鸿蒙HarmonyOS实战-Stage模型(开发卡片事件)

    一.开发卡片事件 HarmonyOS元服务卡片页面(Metaservice Card Page)是指在HarmonyOS系统中,用于展示元服务的页面界面.元服务是指一组提供特定功能或服务的组件,例如天 ...

  10. 【昇腾开发全流程】AscendCL开发板模型推理

    前言 学会如何安装配置华为云ModelArts.开发板Atlas 200I DK A2. 并打通一个Ascend910训练到Ascend310推理的全流程思路. 在本篇章,我们继续进入推理阶段! 推理 ...