这个问题在这里已经有了答案:
mysql平均时间列(1个答案)
11个月前关门了。
我有一个表,它有一个“duration”列,以时间格式存储duration,即数据类型是“time”。当我根据某个分组条件计算此“持续时间”列的平均值时,它会给出以下输出:
以下是查询:
select avg(Cactive_duration) as 'duration'
from table_name
group by column_name;
但当我尝试将它们转换为时间格式时,输出如下:
以下是查询:
select time(avg(Cactive_duration)) as 'duration'
from table_name
group by column_name;
非常感谢您的帮助。数据库是mysql。
1条答案
按热度按时间cpjpxq1n1#
简单的回答是:mysql不能聚合时间。
最好的办法是,mysql通过提出一个例外来承认这一点。相反,它将时间转换成某个数字(似乎是内部的表示形式)并处理它,结果得到一个没有人想要的数字。
将时间转换为秒,聚合这些时间,然后再转换回时间: