在日常的工作中,我们往往需要对表格数据的拼接,用来生成一些复合数据列,如下图类似场景。

其实,在powerbi中,我们同样也可以对表格文本进行拼接。今天我们就介绍两个DAX函数,COMBINEVALUES(表函数,新建列)与 CONCATENATEX(度量值)。
示例数据表:

一:COMBINEVALUES(表函数,新建列),行值拼接。

1.1  COMBINEVALUES函数的组成和基本解析

注释:将多个字符串连接为一个字符串
语法:COMBINEVALUES(分隔符,表达式1,表达式2,....)
参数:
第一参数:分隔符,必须是一个恒定的值
第二参数及之后的参数:可以是一个列,也可以是表达式
返回:值(连接之后的字符串)
示例:
复合信息列 = COMBINEVALUES("  |  ",'业绩表'[销售团队],'业绩表'[销售人员],'业绩表'[销售业绩])

将业绩表里的销售团队,销售人员,销售业绩拼接,并以"|"分割他们。

复合信息列 = COMBINEVALUES("  |  ",'业绩表'[销售团队],'业绩表'[销售人员],'业绩表'[销售业绩])

1.2  实操与应用

第一步,进入powerbi数据视图,找到对应的表

第二步,点击新建列,并输入对应的dax函数,点击完成,复合信息列就成功创建了

二:CONCATENATEX(度量值),列值拼接

那么列值拼接呢?这里我们就可以使用度量值来解决问题了。

2.1  函数的组成和基本解析

CONCATENATEX函数
注释:将表中的每一行按表达式连接在一起
语法:CONCATENATEX(表,表达式,分隔符)
参数:
第一参数:计算表达式的表
第二参数:为表的每一行计算的表达式
第三参数:分隔符
返回:值,连接的字符串
示例  
复合信息行 = CONCATENATEX('业绩表','业绩表'[销售人员]," | ")
 #将业绩表中的销售人员连接在一起,以"  | ",分割。

2.2  实操与应用

第一步,点击新建度量值,并输入以下DAX

复合信息行 = CONCATENATEX('业绩表','业绩表'[销售人员]," , ",[销售业绩],DESC)

第二步,在powerbi报表视图里,新建一个视觉对象表

将对应字段拉入表的字段选项中,大功告成。
这里其实也可以看到由于是度量值的形式存在,所以这个拼接列文本是可以受到筛选器筛选的,在某些场景下是相当实用的。

三:总结

CONCATENATEX列向的文本拼接,COMBINEVALUES行向的文本拼接。
CONCATENATEX在其他场景下可以有更多的应用场景,例如智能文本框等视觉对象,下期会介绍智能文本框与CONCATENATEX的结合案例。
以上。我是simone,期待下次分享。

#PowerBi 1分钟学会,powerbi中行列值拼接(COMBINEVALUES与CONCATENATEX)的更多相关文章

  1. 10分钟学会windows中iis搭建服务器集群实现负载均衡和nginx代理转发

    前言 我们之前聊过 10分钟搭建服务器集群--Windows7系统中nginx与IIS服务器搭建集群实现负载均衡:https://www.cnblogs.com/xiongze520/p/103087 ...

  2. 三分钟学会CSS3中的FLEXBOX布局

    原文地址,保护版权,请勿转载:http://page.factj.com/blog/p/2574 这篇文章里我们将学习CSS里flexbox布局的几个最重要的概念,通过学习flexbox布局,你会发现 ...

  3. 5分钟学会vue中的路由守卫(导航守卫)

    在项目开发中每一次路由的切换或者页面的刷新都需要判断用户是否已经登录,前端可以判断,后端也会进行判断的,我们前端最好也进行判断. vue-router提供了导航钩子:全局前置导航钩子 beforeEa ...

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

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

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

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

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

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

  7. [分享] 史上最简单的封装教程,五分钟学会封装系统(以封装Windows 7为例)

    [分享] 史上最简单的封装教程,五分钟学会封装系统(以封装Windows 7为例) 踏雁寻花 发表于 2015-8-23 23:31:28 https://www.itsk.com/thread-35 ...

  8. 10分钟学会Linux

    10分钟学会Linux有点夸张,可是能够让一个新手初步熟悉Linux中最重要最主要的知识,本文翻译的英文网页在众多Linux入门学习的资料中还是很不错的. 英文地址:http://freeengine ...

  9. PHP学习过程_Symfony_(3)_整理_十分钟学会Symfony

    这篇文章主要介绍了Symfony学习十分钟入门教程,详细介绍了Symfony的安装配置,项目初始化,建立Bundle,设计实体,添加约束,增删改查等基本操作技巧,需要的朋友可以参考下 (此文章已被多人 ...

  10. 【译】10分钟学会Pandas

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

随机推荐

  1. ps18.3.20

    PS添加图层蒙版,然后画笔,括号是画笔的大小,,还要调,不透明度

  2. Windows系统下找到占用当前端口的进程

    在进行服务调试时如果遇到端口冲突而不自知,可能会出现莫名其妙的错误.因此在不确定的情况下最好先查看要用的端口是否被占用. 下面介绍查看端口占用情况方法. 比如现在是要找到端口为8088的占用,在cmd ...

  3. docker学习随笔

    总结自https://zhuanlan.zhihu.com/p/187505981 Linux内核提供了Namespace技术来隔离PID/IPC/网络资源等,还提供了Control Group(cg ...

  4. Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.22.1:test (default-test) on

    解决错误 Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.22.1:test (default-test ...

  5. uni-popup 遮不住头部标题的解决办法

    要做一个小程序,会有弹窗,但是uni-app的API组件uni.showModal不足以满足我的需求,于是我用HBuilderX引入了uni-popup. 代码是这样的 <button @cli ...

  6. 性能的极致,Rust的加持,Zed-Dev编辑器快速搭建Python3.10开发环境

    快就一个字,甚至比以快著称于世的Sublime 4编辑器都快,这就是Zed.dev编辑器.其底层由 Rust 编写,比基于Electron技术微软开源的编辑器VSCode快一倍有余,性能上无出其右,同 ...

  7. 标准C语言32个关键字

    数据类型相关:     内建类型:         char  short  int  long  void  float  double     7     自建类型:         struct ...

  8. 使用K8S进行蓝绿部署的简明实操指南

    在之前的应用部署系列文章里,我们已经介绍过什么是蓝绿部署.如需回顾,点击下方文章链接即可重温.本文我们将会介绍如何使用 Kubernetes 实现蓝绿部署. 应用部署初探:3个主要阶段.4种常见模式 ...

  9. 2020中国最好大学排名.py(亲测有效)

    import requests from bs4 import BeautifulSoup import bs4 def getHTMLText(url): try: r = requests.get ...

  10. SpringBoot高频面试题

    Springboot的优点 内置servlet容器,不需要在服务器部署 tomcat.只需要将项目打成 jar 包,使用 java -jar xxx.jar一键式启动项目 SpringBoot提供了s ...