我需要将两列中的条目连接成一个逗号分隔的列表,但需要将结果按字母顺序排列。
数据:
PRIMARY_ORGAN | SECONDARY_ORGAN
--------------|----------------
Kidney | Heart
Heart | Kidney
Liver | Kidney
Liver | Heart
预期结果:
Heart, Kidney
Heart, Kidney
Kidney, Liver
Heart, Liver
换句话说,先简单地对两列进行排序无济于事。
答案 0 :(得分:1)
CONCATENATEX
function允许使用参数来指示连接列表的顺序。
Concat = CONCATENATEX(
{Organs[PRIMARY_ORGAN], Organs[SECONDARY_ORGAN]}, --List to concatenate
[Value], --Values to concatenate
", ", --Delimiter
[Value], --Order By
ASC --Order Direction
)
之所以使用[Value]
是因为我使用{,}
语法手动声明了一个列表,而没有分配任何列名。如果出于某种原因要分配名称,可以使用SELECTCOLUMNS
函数。例如
Concat =
VAR List = SELECTCOLUMNS(
{Organs[PRIMARY_ORGAN], Organs[SECONDARY_ORGAN]},
"Organ", [Value]
)
RETURN CONCATENATEX(List, [Organ], ", ", [Organ], ASC)