小编noc*_*374的帖子

为范围内的每个日期创建一行,并为 SQL 中的记录的日期范围内的每一天添加 1

假设我有一个日期范围 @StartDate = 2022-01-01 和 @EndDate = 2022-02-01,这是一个报告期。

此外,我还有客户记录,其中每个客户都有一个 LIVE Date 和一个 ServiceEndDate (或 ServiceEndDate = NULL,因为他们是持续客户)

某些客户的实时日期和服务结束日期范围可能超出报告期间范围。我只想报告几天他们是该期间的客户。

姓名 实时约会 服务结束日期
汤姆 2021-10-11 2022-01-13
标记 2022-11-13 2022-02-15
安迪 2022-01-02 2022-02-10
2022-01-09 2022-01-14

我想创建一个表,其中 A 列是日期(在报告期间的每个日期之间迭代),B 列是该日期的客户数量总和。

像这样的东西

日期 客户数量
2022-01-01 2
2022-01-02 3
2022-01-03 3
2022-01-04 3
2022-01-05 3
2022-01-06 3
2022-01-07 3
2022-01-08 3
2022-01-09 4
2022-01-10 4
2022-01-11 4
2022-01-12 4
2022-01-13 4
2022-01-14 3
2022-01-15 3

依此类推,直到@EndDate结束

任何帮助将不胜感激,谢谢。

sql t-sql sql-server common-table-expression

1
推荐指数
1
解决办法
2138
查看次数

标签 统计

common-table-expression ×1

sql ×1

sql-server ×1

t-sql ×1