【发布时间】:2020-04-06 02:21:02
【问题描述】:
所以我有 2 个日期列,开始和结束。我要完成的是每天的库存,这将追溯到 2020 年初,因此我拥有这些字段:
开始日期、当天新增的数量、当天关闭的数量以及前几天的现有打开数量。我派生的基本数据结构是开始日期、结束日期、请求类型(如果开始日期 = 报告日期且结束日期为空,则“新添加”,如果结束日期不为空,则“工作已结束”,如果开始日期为小于报告日期然后“现有打开”。问题是这些取决于报告日期和打开/关闭日期之间的相关性。我需要能够按日期分组并给出每天的计数。我试过这些2 个解决方案,并没有像我希望的那样工作,因为它们与我的情况略有不同。(Count Function on Multiple Columns by Date (SQL Server) 和Get count on two different date columns and group by date)。当我总结时,我需要根据当前日期每天进行计数库存和前一天的现有物品。
我的基本数据结构是这样的,是假数据:
+----+------------+-----------+---+
| ID | StartDate | EndDate | |
+----+------------+-----------+---+
| 1 | 1/1/2020 | NULL | |
| 2 | 12/1/2019 | 1/1/2020 | |
| 3 | 1/1/2020 | 1/3/2020 | |
| 4 | 12/17/2019 | 1/2/2020 | |
+----+------------+-----------+---+
预期结果:
+-------------+---------+-----------------+-----------+--+--+------+
| Report Date | NewAdds | ExistingOpen | Closed | | | |
+-------------+---------+-----------------+-----------+--+--+------+
| 1/1/2020 | 2 | 1 | 1 | | | |
| 1/2/2020 | 0 | 1 | 1 | | | |
| 1/3/2020 | 0 | 1 | 1 | | | |
+-------------+---------+-----------------+-----------+--+--+------+
【问题讨论】:
-
50% 清晰。我算什么?你应该给出至少 10 天的数据。
标签: sql-server