如何计算上个月的ID数量?

问题描述 投票:0回答:1

我有一个名为 Legal 的表,其中包含餐厅 ID、开业日期和结束日期列。该表通过 Calendar[Date] 与 Calendar 有两个非活动关系。

我正在尝试计算某个日期范围内打开的 ID 数量。如果 ID 有 Opening 但没有 Closing 或如果 Closed 小于分析时间,则认为 ID 是开放的;如果截止日期晚于分析日期,则关闭。

到目前为止我是这样计算的:

Opening = 
    CALCULATE(
        COUNT(Legal[Restaurant ID]),
        Legal[Opening date]<>BLANK(),
        USERELATIONSHIP('Calendar'[Date],Legal[Opening date]),
        FILTER('Calendar','Calendar'[Date]<=TODAY()),
        FILTER(ALL(Legal),Legal[Opening date] = PREVIOUSMONTH('Calendar'[Date]))
)
Closing = 
    CALCULATE(
        COUNT(Legal[Restaurant ID]),
        USERELATIONSHIP('Calendar'[Date],Legal[Closing]),
        FILTER('Calendar','Calendar'[Date]<=TODAY())
)
Net = [Opening] - [Closing]
TotalOpen = 
VAR MaxCalendar = MAX(Calendar[Date])
VAR MaxSalesMonth = CALCULATE(MAX('Calendar'[Month]), ALL('Calendar'), 'Calendar'[Date] = MaxCalendar)
VAR MinCalendar = CALCULATE(MIN(Legal[Opening date]), REMOVEFILTERS('Calendar'))
VAR Restaurants =
    CALCULATE([Net],
        DATESBETWEEN('Calendar'[Date], MinCalendar, MaxCalendar),
        USERELATIONSHIP(Legal[Restaurant ID], 'Restaurants Dim'[Restaurant ID])
    )
RETURN
    IF(MAX('Calendar'[Month]) = MaxSalesMonth, Restaurants, BLANK())

我尝试使用

FILTER(ALL(Legal), Legal[Opening date] = PREVIOUS(Legal[Opening date])
来计算上个月打开的ID数量。

这个想法是,当我在表中分析这个时,我想检索上个月我打开的 ID 总数,如下所示:

全部开放 上个月开放总数
一月 100 99
二月 103 100
三月 105 103
四月 102 105
powerbi dax
1个回答
0
投票

用这个解决了

Total Open Previous Month =
VAR MaxCalendar = MAX(Calendar[Date])
VAR MinCalendarPreviousMonth = CALCULATE(MIN(Calendar[Date]), PREVIOUSMONTH(Calendar[Date]))
VAR MaxCalendarPreviousMonth = CALCULATE(MAX(Calendar[Date]), PREVIOUSMONTH(Calendar[Date]))
VAR RestaurantsPreviousMonth =
    CALCULATE(
        [Net],
        DATESBETWEEN(Calendar[Date], MinCalendarPreviousMonth, MaxCalendarPreviousMonth),
        USERELATIONSHIP(Legal[Opening date], Calendar[Date])
    )
RETURN
    RestaurantsPreviousMonth

该度量将根据 Legal 表的打开日期和 Calendar 表之间的关系来计算上个月打开的 ID 的数量。确保您的日历表包含完整的日期范围,包括上个月的日期,以便准确计算。

然后,您可以在表中使用此度量值以及当月的总开放计数。您的表格应显示所需的输出,其中显示每个月的开放 ID 总数以及上个月的开放 ID 总数。

© www.soinside.com 2019 - 2024. All rights reserved.