很着急的用一条MYSQL语句,帮帮忙

很着急的用一条MYSQL语句,各位高手帮帮忙

各位高人,看能实现不。

这个表有4个字段 ,id(int), nameID(int) ,startDate(datetime),endDAT(datetime)

插入好多条数据,有的人可能有多条数据,我要实现的功能是,用一条语句,把每个人的时间间隔总和计算出来,然后按照每个人的时间间隔总和对人员(nameID)进行排序,这个日期都是要精确到秒的。我水平不行,试着用DATEDIFF,TIMEDIFF计算经过的秒数都不准确,高手指点迷津,真捆扰死了

id(int), nameID(int) ,startDate(datetime),endDAT(datetime)

1 ww 1899-12-10 00:00:00 1900-12-15 00:00:00

2 zz 1899-12-15 00:00:01 1899-12-19 00:02:00

3 ww 1899-12-15 10:00:03 1899-12-15 10:00:03

4 ee 1899-12-15 00:00:01 1899-12-19 00:02:00


SQL code

select nameID,sum(UNIX_TIMESTAMP(endDAT)-UNIX_TIMESTAMP(startDate))
from 这个表
group by nameID 
order by 3 desc;


你的日期怎么都是 1900 年之前的啊??

SQL code

select nameID,sum(timestampdiff(second,starttime,endtime))
from 这个表
group by nameID


转换成TIMESTAMP类型,这样就可以计算啦。
1899-12-19 应该是台湾的年份吧 :)

SELECT TIMEDIFF('1900-12-19 12:45:06','1900-12-19 10:00:05');
 
-----------------------------------------------
02:45:01

这样怎么不对了

应该没错啊,你觉得有所是不是因为
'1900-02-27',
'1900-02-28',
'1900-02-29', ---> 这天不存在(除了在Excel里),1800,1900,2100都不是闰年
'1900-03-01'
很着急的用一条MYSQL语句,帮帮忙

相关文章:

你感兴趣的文章:

标签云: