【问题标题】:How to summarize column with condition on power bi?如何在 power bi 上用条件汇总列?
【发布时间】:2020-04-27 06:34:50
【问题描述】:

我正在尝试创建具有以下条件的表格汇总表

从原始表到汇总表,我们必须使用以下条件创建

1) select distinct ids
2) select screen name base on highest count group by id and today date
3) If two screens are same value on today date with the same id then pick the first screen

【问题讨论】:

    标签: powerbi powerbi-desktop powerbi-datasource power-bi-report-server powerbi-custom-visuals


    【解决方案1】:

    这会产生作为计算表的所需结果。

    SummaryTable = 
    ADDCOLUMNS(
        ADDCOLUMNS(
            FILTER(
                SUMMARIZE(
                    OriginalTable,
                    OriginalTable[ID],
                    OriginalTable[StartDate]
                ),
                OriginalTable[StartDate] = TODAY()
            ),
            "Count", CALCULATE( MAX( OriginalTable[Count] ) )
        ),
        "Screen",
        VAR CurrentCount = [Count]
        RETURN CALCULATE( MIN(OriginalTable[Screen]), OriginalTable[Count] = CurrentCount )
    )
    

    输出:

    【讨论】:

    • 未收到计数 :(
    • 什么意思?上面第三位的“计数”列?
    • 我在您上面的描述中找不到该要求。它只是从原始表中提取行。你能用更多细节更新问题吗?
    • 您是否在本地尝试过,在我的本地列标题中创建但未插入任何行。
    • MIN(OriginalTable[Screen] 是什么意思?请告诉我。
    【解决方案2】:

    您可以使用以下公式创建排名计算:

    Rank = IF(Original[Start Date]=TODAY(),RANKX(CALCULATETABLE(Original,ALLEXCEPT(Original,Original[ID])),Original[Count]),0)
    

    输出:

    您应该在计算中将“原始”替换为您的表格名称。创建 Rank 后,您只需过滤 Rank=1 即可获得所需的结果。希望这会有所帮助。

    【讨论】:

    • 排名也不起作用,我收到的整列都是 0。
    猜你喜欢
    • 2019-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多