mysql - 使用 Mysql 或 PowerBI 和 3 个表(数据集),您如何将工作日添加到销售日期?
问题描述
我在 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
我需要在“销售表”中添加一个新列,其中我得到“交付日期”,这是“销售日期”+ 交付天数的总和。现在,我遇到的问题是我不能 /不知道我怎么能设法只添加工作日。
解决方案
我会过滤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] )
推荐阅读
- javascript - 如何测试调度自定义事件的方法
- c# - 从 Razor 页面视图中的声明中获取数据
- node.js - Winston - 将日志数据附加到 JSON 数组中
- c# - 资源的奇怪问题 - 看不到字段
- php - Excel 文件不直接下载其显示弹出窗口
- css - 美人鱼改变节点/选项的位置无论如何都要固定节点的位置
- java - 无法写入 JSON:无法延迟初始化角色集合:com.managem.model.Region.pays,无法初始化代理 - 无会话
- javascript - Javascript保持模态隐藏
- facebook - Facebook Marketing API, Targeting Search - 按国家和城市进行搜索定位
- c# - C# REST API 控制器:具有 2 个不同操作的相同路由