DAX - 计算上个月最后一天和当月最后一天之间的平均值

DAX - Calculate average between last day of past month and last day of current month

我正在研究 Excel 和 Power Pivot,我正在尝试获取上个月最后一天和当月最后一天之间的平均销售额,但我做不到为它找到正确的表达方式。

我有 "Credits" table 和 "Calendar" table,两者都由 "Date" 字段链接。

所以,这就是我所拥有的:

=CALCULATE ( AVERAGE(Credits[Sales] );
FILTER ( Calendar ;
Calendar[DateNum] >= VALUE(FORMAT(STARTOFMONTH(Calendar[Date])-1;"YYYYMMDD"))
&&
Calendar[DateNum] <= VALUE(FORMAT(ENDOFMONTH(Calendar[Date]);"YYYYMMDD"))))

我在动态 table 中使用该度量以及 "Month" 维度,但它只显示整个月的平均值,没有考虑我尝试应用的过滤器所以它也需要上个月的最后一天。

我认为正在发生的事情是该月份仍在您的过滤器上下文中。

试试 FILTER( ALL(Calendar) ;


我想你也可以稍微简化一下你的措施。也许可以尝试以下方法:

CALCULATE(
    AVERAGE( Credits[Sales] );
    DATESBETWEEN(
        Calendar[Date];
        STARTOFMONTH( Calendar[Date] ) - 1;
        ENDOFMONTH( Calendar[Date] )
    )
)