根据包含日期范围的观察数量按日期计算

Posted

技术标签:

【中文标题】根据包含日期范围的观察数量按日期计算【英文标题】:Getting a count by date based on the number of observations with encompassing date ranges 【发布时间】:2017-05-15 07:16:06 【问题描述】:

我正在使用 Microsoft Access 中的一个表,其中我有 2 列带有开始和结束日期。

我想按日期计算包含输出表中日期的日期范围的行数。

输入数据

Start Date  End Date
01/02/2017  03/02/2017
07/02/2017  19/02/2017
09/02/2017  19/02/2017
11/02/2017  12/02/2017
12/02/2017  17/02/2017

期望的输出

Date    Count
01/02/2017  1
02/02/2017  1
03/02/2017  1
04/02/2017  0
05/02/2017  0
06/02/2017  0
07/02/2017  1
08/02/2017  1
09/02/2017  2
10/02/2017  2
11/02/2017  3
12/02/2017  4
13/02/2017  3
14/02/2017  3
15/02/2017  3
16/02/2017  3
17/02/2017  3
18/02/2017  2
19/02/2017  2
20/02/2017  0

对于这个项目,我必须使用 Microsoft Access 2010,所以无论是 SQL 代码还是设计视图输入的解决方案都会很棒。

对此的任何帮助将不胜感激。谢谢!

【问题讨论】:

有很多问题解释了如何在 SQL 中获取日期范围。你试过什么?目前,这是一个“请为我编程,我搜索了几分钟但没有找到我可以复制和粘贴的内容” 问题,这些问题在这里不受欢迎。 我在这里没有找到任何按包含日期范围标准汇总的帖子。谢谢 【参考方案1】:

使用以下查询来获得所需的结果。您还可以根据您的要求更改列

SELECT END_DATE AS DATE, COUNT(*) AS COUNT FROM TABLE_NAME
GROUP BY END_DATE ORDER BY END_DATE;

【讨论】:

Eh ...这将只返回四 (4) 个值,计数在 1 和 2 之间。所以“有效”?

以上是关于根据包含日期范围的观察数量按日期计算的主要内容,如果未能解决你的问题,请参考以下文章

DATEDIFF 按创建日期划分范围,利用外部日期按月计算年龄历史

根据日期范围计算运行平均值

要填写的预定义日期范围[重复]

计算日期范围的重叠数量

如何在 Looker 中按日期计算状态变化?

SQL - 显示给定范围内的所有日期,并使用数据库中的时间戳计算该日期有多少帖子