数据库是这样的
id ,开启时间(以秒为单位),关闭时间(以秒为单位),使用时长(秒为单位),日期
。
之前我想得到 每个个小时的使用 的使用时长
从0小时开始 到24点结束
int i = 0;
for
{
select Sum(useTime) from table where openTime = 3600 * i and colseTime = 3600 * i+1
}
这样处理的确能得到一部分 每小时的使用时长。 可是在某些情况下取不到值
比如 在4.58 - 5.01 这样的的数据并不能满足 查询语句的要求 。 也就查不到这样的值。
正确的逻辑应该是 4.58 到 5.00 记在 16.00 这条数据的使用时间内 。 5.00 - 5.01 纪录在17的数据内
大概思路
好久没写sql了,语句不知道会不会有问题