首页 > 解决方案 > 基于使用 DAX 的 Power BI 中的条件返回日期

问题描述

希望您能够帮助我。我需要在 Power BI 中计算 today() 和基于条件的某个日期之间的日期差异。

我有一个日历表,其日期 (calendario[fecha]) 与事实表 ASID 相关,用于预测列 ASID[amount] 和一个给我线性回归的测量 [Estimado]

    Estimado = 
VAR Known =
    FILTER (
        SELECTCOLUMNS (
            ALLSELECTED ( 'calendario'[fecha] ),
            "Known[X]", calendario[fecha],
            "Known[Y]", [ASID]
        ),
        AND (
            NOT ( ISBLANK ( Known[X] ) ),
            NOT ( ISBLANK ( Known[Y] ) )
        )
    )
VAR Count_Items =
    COUNTROWS ( Known )
VAR Sum_X =
    SUMX ( Known, Known[X] )
VAR Sum_X2 =
    SUMX ( Known, Known[X] ^ 2 )
VAR Sum_Y =
    SUMX ( Known, Known[Y] )
VAR Sum_XY =
    SUMX ( Known, Known[X] * Known[Y] )
VAR Average_X =
    AVERAGEX ( Known, Known[X] )
VAR Average_Y =
    AVERAGEX ( Known, Known[Y] )
VAR Slope =
    DIVIDE (
        Count_Items * Sum_XY - Sum_X * Sum_Y,
        Count_Items * Sum_X2 - Sum_X ^ 2
    )
VAR Intercept =
    Average_Y - Slope * Average_X
RETURN
    ROUND(
        SUMX (
            DISTINCT ( calendario[fecha] ),
            Intercept + Slope * calendario[fecha]
    ),0)

我的可视化矩阵有 3 列:calendario[fecha]、实际值 [ASID] 和估计度量 [Estimado]。我对该 ASID 的限制为 1105。我可以看到,在未来的一天,假设从现在 03/12/2020 一个月后,估计值达到 1105(在滚动所有矩阵之后),所以我需要一种方法来捕获那一天并能够计算2020 年 3 月 12 日 - 今天()并显示在某处:“还剩 30 天”

Raihan:我可以按照你建议的 矩阵使用 datediff 有没有办法只捕获 231 值?

DAX 现在是:if([Estimado]>1105, DATEDIFF(TODAY(),LASTDATE(calendario[fecha]),DAY),0)

标签: powerbidax

解决方案


如果您可以提供您想要的示例数据集和示例答案会更好。


推荐阅读