MYSQL Round the datetime to 15 minute

前端 未结 5 956
囚心锁ツ
囚心锁ツ 2021-01-17 12:58

I want to update the datetime round to 15 minutes in a MYSQL database table.

For Example:

If the dateTime is 2013-10-08 10:36:00, I want to conv

5条回答
  •  暗喜
    暗喜 (楼主)
    2021-01-17 13:27

    The answer you have seen is quite useful, try this

    SELECT SUBSTRING_INDEX(datetime_field, ' ', -1) AS old_time,SEC_TO_TIME((TIME_TO_SEC(datetime_field) DIV 900) * 900) AS rounded_time, datetime_field FROM yourtable
    

    You can get time from the datetime_field as substring and replace it with the rounded time.

    If you want to update the datetime you can reply it and update it with update function:

    UPDATE yourtable SET `datetime_field` =  REPLACE(datetime_filed,SUBSTRING_INDEX(datetime_field, ' ', -1),SEC_TO_TIME((TIME_TO_SEC(datetime_field) DIV 900) * 900))
    

提交回复
热议问题