我的表格中有一个日期时间0000-00-00 00:00:00
列,
更新____-__-__ __:MM:SS
时需要保留分钟和秒数
但也要将日期和小时更改为当前时间。
我如何在MySQL方面实现这一目标?
当前日期字段值:2016-06-27 15 :13:07
我们在2016-07-28 12:31:18更新此表
所需日期字段值:2016-07-28 12 :13:07
正如您所看到的,更新日期仍然正确2016-07-28 12:
,但:13:07
(分钟和秒)从更新前的日期开始选择,并替换为当前时间的分钟和秒数
答案 0 :(得分:1)
您可以使用MySQL CONCAT()功能。
您的更新查询看起来像这样,
UPDATE table_name
SET
date_column = CONCAT('2016-06-29 15:',MINUTE(date_column),':',SECOND(date_column))
WHERE
column_id = 1
CONCAT()返回连接给定参数产生的字符串。
因此,在您的情况下,我们会通过将第一个参数添加为2016-06-29 15:
来更新日期和小时,然后在同一列中使用相同的分钟和秒 。并连接所有参数以根据需要创建新值。
http://dev.mysql.com/doc/refman/5.7/en/string-functions.html#function_concat