表数据如下
日期 通话时间 通话类型 通话号码
2008-09-08 00:30:05 主叫 13212121234
2008-09-07 00:20:35 主叫 13212121234
×××
球总通话时长?
可能你会认为这个很简单
select sum(通话时间) from table
但是你会得到你所意外的结果
sum(通话时间)
5040 ~大概可能是这个结果
What?怎么会是这样的呢
对于mySql来说其实际算法是将datetime类型字段值按4位年、2位月、2位日、2位时、2位分、2位秒顺序组成一个数字后再进行累加
那么正确的写法呢?
SELECT
SEC_TO_TIME( SUM( TIME_TO_SEC( `通话时间` ) ) ) AS 总时长
FROM table;
评论 (0)