在我的数据库中,时间存储为“日期时间”(我不知道这是否是问题 – 我尝试了datetime和timestamp).结构如下:
ID | START_DATE | END_DATE
1 | 2011-10-10 08:15:00 | 2011-10-10 12:00:00
2 | 2011-10-11 09:00:00 | 2011-10-11 14:30:00
3 | 2011-10-12 08:45:00 | 2011-10-12 10:15:00
我试图得到所有开始和结束时间之间的总秒数.这就是我所拥有的:
$times = mysql_query("SELECT SUM(TIMEDIFF(end_date, start_date))
AS timesum FROM schedules");
$timetotal = mysql_fetch_assoc($times);
echo $timetotal['timesum'];
现在,总和应该是38700,但是当我运行上面的查询时,它返回100500.查询有什么问题?
解决方法:
你不能总结日期时间值 – 你需要先转换为秒….
SELECT SUm(time_to_sec(TIMEDIFF(end_date, start_date)))
AS timesum FROM schedules
标签:mysql,datetime,timestamp,sum
来源: https://codeday.me/bug/20190721/1495041.html
版权声明:本文为weixin_36304087原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。