连接文本字符串经常会用到连接符&,还有个的DAX函数CONCATENATE,可以将两个字符串连接成一个字符串,这个函数本身非常简单,使用场景也有限,不过它的迭代函数CONCATENATEX,用处非常大,之前的文章中也多次用到过这个函数。 CONCATENATEX函数迭代表的每一行,按表达式和分隔符将每一行的字符连接为一个文本字符串,语法如下:
由于度量值的结果都只能是一个值,当需要返回多个值时,就可以利用CONCATENATEX函数将多个值连接成一个字符串输出,下面通过几个应用场景来理解这个函数的用法。 1. 返回多个类别名称 对于多选的切片器,如果想获取切片器的选项,其结果就是一个列表,这时就可以用CONCATENATEX函数将列表合并成一个字符串来返回,比如获取产品切片器的筛选情况,度量值可以这样写:
上面度量值是CONCATENATEX函数最常用的写法,一般只用前三个参数,其效果如下: 参考:Power BI可视化设计:用文字展示切片器的筛选情况 2. 返回多个类别的名称和数据 如果不仅想展示切片器所选的产品,还需要同时展示出该产品的利润,就可以这样写个度量值:
这个度量值相比前一个,主要是第2个参数有变化,每一行的字符,本身又是产品和利润数据连在一起的字符串;第三个参数分隔符,这里用的是UNICHAR(10),也就是换行符,来让每个字符串单独一行来显示,用卡片图展示效果如下: 3. 按顺序来展示类别名称和数据 在上面效果的基础上,如果想让这些产品,按照利润额的高低,从上往下排列展示,就需要用到CONCATENATEX函数的第4和第5参数:
第四参数排序依据是按利润金额来排序;第5参数DESC表示按降序排列,效果如下: 通过排序的参数,就实现了多个字符串的按顺序连接。 通过上面3个场景,把CONCATENATEX函数的每个参数的用法都做了介绍,遇到类似的需求时,就会更理解该函数的妙处。 之前介绍的动态展示表的例子,其中第一种方法,也是用CONCATENATEX函数来实现的:Power BI如何动态展示表?送你两种方法 |
|