【问题标题】:How can we group by one column and then need to group other column values in comma separated in DAX我们如何按一列分组,然后需要在 DAX 中以逗号分隔的其他列值分组
【发布时间】:2021-12-26 05:09:51
【问题描述】:

例如:

Department Customer Name
CSE A
CSE B
IT D
CSE A
ECE C
EEE B
ECE F

输出:

Department Customer Name
CSE A,B
IT D
ECE C,F
EEE B

【问题讨论】:

    标签: sql powerbi dax


    【解决方案1】:

    试试这个 DAX 度量

    Measure =
    CONCATENATEX ( VALUES ( tbl[Customer] ), tbl[Customer], "," )
    

    【讨论】:

    • 您能否建议如何在 Concatenatex 中使用过滤器,以便我仅过滤优先级客户名称,即是否优先级为是值应连接
    【解决方案2】:

    您可以在 Power Query 中执行此操作,只需将以下 5 个步骤添加到表的 Advance Query Editor

    请根据您最后的步骤名称调整代码中的PREVIOUS_STEP_NAME

    let
        //............,
        //............ all previous steps,
        
        #"Removed Duplicates" = Table.Distinct(#"PREVIOUS_STEP_NAME"),
        #"Grouped Rows" = Table.Group(#"Removed Duplicates", {"Department"}, {{"all name", each _, type table [Department=nullable text, Customer Name=nullable text]}}),
    
        #"Added Custom" = Table.AddColumn(#"Grouped Rows", "Custom", each [all name][Customer Name]),
        #"Extracted Values" = Table.TransformColumns(#"Added Custom", {"Custom", each Text.Combine(List.Transform(_, Text.From), ", "), type text}),
        #"Removed Columns" = Table.RemoveColumns(#"Extracted Values",{"all name"})
    in
        #"Removed Columns"
    

    这是输出-

    但是,如果您想保持基表不变,只需创建一个指向基表作为源的新表并执行上述步骤即可。

    【讨论】:

      猜你喜欢
      • 2018-02-08
      • 1970-01-01
      • 2013-10-26
      • 1970-01-01
      • 1970-01-01
      • 2018-07-18
      • 1970-01-01
      • 1970-01-01
      • 2023-03-21
      相关资源
      最近更新 更多