【问题标题】:Using PowerBI DAX, Calculate the number of days, through the current date使用 PowerBI DAX,计算当前日期的天数
【发布时间】:2023-01-07 00:17:21
【问题描述】:

在查看所附图片时,我在 PBI 中有一个表,目前仅包含公交日柱子。我正在尝试添加一个递增的列MTD日列,每行。红色列是我需要在 DAX 中创建的列。黄色行反映了MTD日当新的一个月开始时,列“重置”为 1。

我的挑战是公交日列不会显示一个月中的每一天,因此不能使用 DATEDIFF。

非常感谢任何帮助!

【问题讨论】:

  • 以后,请提供实际的示例数据,而不是图像。如果可以将数据复制粘贴到 Power BI 中,您就更有可能获得帮助。

标签: powerbi dax


【解决方案1】:

对于此类您想要标记不连续日期的问题,RANKX 是您的首选,除非您可以在堆栈的上游进一步解决它。

这是一个 DAX 列解决方案,可根据您的规范添加计算列:

MTD Day = 
VAR _yr = YEAR ( [Bus_Day] ) 
VAR _mth = MONTH ( 'Table'[Bus_Day] )
RETURN
    RANKX ( 
        FILTER (
            'Table' , 
            YEAR ( [Bus_Day] ) = _yr 
            && MONTH ( [Bus_Day] ) = _mth
        ), 
        [Bus_Day] , , ASC 
    )

您还可以使用度量来计算这个,这个公式可以处理您的样本数据:

MTD Day Measure = 
VAR _day = SELECTEDVALUE ( 'Table'[Bus_Day] )
VAR _tbl = 
    FILTER (
        ALL ( 'Table' ) , 
        YEAR ( 'Table'[Bus_Day] ) = YEAR ( _day ) 
        && MONTH ( 'Table'[Bus_Day] ) = MONTH ( _day )
    )
RETURN
    RANKX ( 
        _tbl, 
        CALCULATE ( SELECTEDVALUE ( 'Table'[Bus_Day] ) ) , , ASC 
    )

结果:

【讨论】:

    猜你喜欢
    • 2021-04-13
    • 1970-01-01
    • 1970-01-01
    • 2012-02-03
    • 2023-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-03
    相关资源
    最近更新 更多