使用mysql或powerbi和3个表(数据集),如何将工作日添加到销售日期?

x33g5p2x  于 2021-06-17  发布在  Mysql
关注(0)|答案(1)|浏览(345)

我在mysql服务器和powerbi中有以下表格(它们中的任何一个都可以使用的解决方案)。
销售表

Date sold | Product | item | address
24-11-2018 | socks | 02 | orlando 
26-11-2018 | socks | 02 | mexico df

日历表

Date | isWeekend | isHoliday | isWorkday
24-11-2018 | 1 |  0 | 0
25-11-2018 | 1 |  1 | 0
26-11-2018 | 0 |  0 | 1
27-11-2018 | 0 |  0 | 1

按地点交货天数表

address | days to deliver in workdays
orlando |  4

我需要在“sales table”中添加一个新的列,在这里我得到“date to deliver”,即“date Selled”+days to deliver的总和。现在,我的问题是我不能/不知道怎样才能只增加工作日。

ct2axkht

ct2axkht1#

我会过滤 Calendar 表中,添加运行/累计工作日列,然后匹配 days to deliver 值设置为正确的累计行。

Date to Deliver =
VAR Dates = FILTER ( 'Calendar', 'Calendar'[Date] > Sales[Date sold] )
VAR CumDays =
    ADDCOLUMNS (
        Dates,
        "CumWorkdays", CALCULATE (
            SUM ( 'Calendar'[isWorkday] ),
            FILTER ( Dates, 'Calendar'[Date] <= EARLIER ( [Date] ) )
        )
    )
VAR DaysToDeliver =
    LOOKUPVALUE (
        DaysToDeliverByLocation[days to deliver in workdays],
        DaysToDeliverByLocation[address], Sales[address]
    )
RETURN
    MINX ( FILTER ( CumDays, [CumWorkdays] = DaysToDeliver ), [Date] )

相关问题