0

所以我想确定自一段时间以来发生了多少小时(与时间戳相比),然后想找出自该时间戳以来我有多少记录(它们每小时完成一次)并将两者相除以获得一个百分比。这两个查询是这样的:

表设计:

历史 --table
--ID --column with device id#
--TIME --DateTime 输入时间的字段

查询一:

SELECT ID, min(TIME), timestampdiff(HOUR,NOW(), TIME) as uphours from Historical group by id

查询 2(尽管此查询是如何编写的,但我希望它对表中的所有 ID 执行此操作):

SELECT count(*) from Historical where ID 1

然后最后一部分是:

uphours / secondQuery_return_value as Percentage

有人可以帮助我了解如何组合这些查询吗?

4

1 回答 1

2

尝试类似:

SELECT ID, min(TIME), (timestampdiff(HOUR,NOW(), min(TIME))/count(*)) as Percentage
from Historical 
group by id

编辑:TIME正如马克班尼斯特所说,改变百分比应该更有意义min(TIME),否则它不会是现在和最旧时间之间的实际差异......

于 2013-04-26T15:39:46.303 回答