我正在尝试更新一些现有数据,这是在我的应用程序中运行的计划任务的后面。
计划任务获取一些数据,然后将其插入到我的数据库中,这会导致时间戳与舍入的秒数相差几秒钟(例如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
。
如何更新此内容以过日期?
答案 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`