获取时间重叠的2列中的记录数

时间:2017-07-04 03:46:15

标签: sql ms-access

我是MS ACCESS的新手,我在尝试从重叠时间范围获取记录数时遇到问题。这是我的数据的一个例子。

example of raw data

enter image description here

我想要的是获取列number_of_records。例如,如果在5.11处添加了4条记录,则number_of_records应为8,因为在5.10处添加了4条记录。

example of raw data with no_of_records column

enter image description here

上图中有错误。我忘记提及,例如,如果时间到达6:00,记录数量不应该添加到以前的记录中,应该重新开始。

你们有什么建议吗?

1 个答案:

答案 0 :(得分:1)

考虑相关计数子查询:

SELECT t.time_column_1, t.time_column_2, 
     (SELECT Count(*) FROM myTable sub
      WHERE sub.time_column_1 <= t.time_column_1
      AND sub.time_column_2 = t.time_column_2) AS number_of_records
FROM mytable t
ORDER BY t.time_column_2, t.time_column_1