圆形时间戳到最近的分钟

时间:2017-03-14 10:20:28

标签: mysql

我正在尝试更新一些现有数据,这是在我的应用程序中运行的计划任务的后面。

计划任务获取一些数据,然后将其插入到我的数据库中,这会导致时间戳与舍入的秒数相差几秒钟(例如2017-14-03 08:00:02)。

我想在更新中使用它之前完善一个select语句。到目前为止,我有这个:

SELECT server_name, connected_count, TIME_FORMAT( SEC_TO_TIME( (TIME_TO_SEC(created_at) DIV 60) * 60 ), '%Y-%m-%d %H:%i:%s') AS rounded_time FROM `server_tracking`

这在时间上完美无缺,将其四舍五入到最接近的分钟,但是它会丢弃日期;留给我0000-00-00 08:00:00

如何更新此内容以过日期?

1 个答案:

答案 0 :(得分:5)

您只需使用DATE_FORMAT()并将秒数替换为0

SELECT 
server_name, 
connected_count, 
DATE_FORMAT(created_at, '%Y-%m-%d %H:%i:00') AS rounded_time 
FROM `server_tracking`