可能重复:
按时间段查询记录和分组
我被困在一个项目的中间。问题是计算给定日期和时间的东西总数。以下是我拥有的表格: 表 1:保存日期和时间信息
Timeid | startDate | endDate | startTime | endTime |
1 | 2012-07-05 | 2012-07-05 | 08:30:00 | 10:00:00 |
2 | 2012-07-05 | 2012-07-06 | 10:30:00 | 12:00:00 |
3 | 2012-07-04 | 2012-07-07 | 08:30:00 | 17:00:00 |
4 | 2012-07-05 | 2012-07-08 | 12:30:00 | 14:00:00 |
5 | 2012-07-04 | 2012-07-06 | 12:30:00 | 14:00:00 |
6 | 2012-07-05 | 2012-07-05 | 08:30:00 | 10:00:00 |
7 | 2012-07-05 | 2012-07-06 | 10:30:00 | 12:00:00 |
表 2:与日期和时间相关的 id 信息相关的 stuff 信息。
Autoid | TimeId | stuffId | amountOfStuff |
1 | 1 | 2 | 1 |
2 | 2 | 2 | 1 |
3 | 3 | 2 | 1 |
4 | 4 | 2 | 1 |
5 | 5 | 2 | 1 |
6 | 6 | 2 | 1 |
7 | 7 | 2 | 1 |
正如在表格中看到的那样,timeID 的表格之间存在关系。我想计算给定日期范围内使用了多少东西(amountofstuff)。
例如,我需要 table2 中存储的东西的总量,日期 startDate:05.07.2012 和 endDate:05.07.2012 和 startTime:07:00:00 endTime:21:00:00。但是,如果时间没有被交叉/削减,那么它不应该被计算在内。对于这个查询结果应该是“3”......解释的数字是:请注意下面的数字是TimeIds。
|--1--| |--2--| |--4--|
|-----------3-----------|
|--6--| |--7--| |--5--|
结果是“3”。从 startDate:05.07.2012 和 endDate:05.07.2012 到 startTime: 07:00:00 endTime: 21:00:00 使用的东西的数量。
我希望我现在已经清楚地解释了一切。让我知道以获取更多信息。谢谢你。