You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Power BI DAX中使用ORDER BY实现多列排序拼接

解决方案

CONCATENATEX函数本身支持指定排序规则,不需要在EVALUATE中使用ORDER BY(这类查询语句不适用于计算列/度量值的DAX场景)。你只需给CONCATENATEX添加排序参数,就能确保同一id下的likes按固定顺序拼接。

修改后的DAX公式如下:

=
VAR ThisID = 'Table'[id]
RETURN
    CONCATENATEX(
        FILTER(
            'Table',
            'Table'[id] = ThisID
        ),
        'Table'[likes],
        "/",
        -- 排序规则:先按id(可选,因已过滤同一id),再按name升序排列
        'Table'[id], ASC,
        'Table'[name], ASC
    )

关键说明:

  • CONCATENATEX的第4及以后的参数用于定义排序逻辑:每一组参数对应一个排序列和排序方向(ASC升序/DESC降序)
  • 由于已经通过FILTER限定了同一id,'Table'[id], ASC可以省略,仅保留'Table'[name], ASC也能实现同一id下按name排序的需求
  • 修改后,同一id下的likes会严格按照name的顺序拼接,不会再出现随机顺序的问题

内容的提问来源于stack exchange,提问作者Rhea

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 10:55:21