MySQL DATETIME - 仅更改日期

时间:2011-01-14 19:34:35

标签: mysql

开始于:2011-01-17 09:30:00

假设我想编辑2011-01-28的日期

最有效的方法是什么:2011-01-28 09:30:00

谢谢!

对于每个人说Date_Add ...要求我减去日期,然后添加日期。这是一种可能性......但是希望删除第一步,只是“替换”日期

6 个答案:

答案 0 :(得分:42)

如果你真的不想使用date_add函数,可以考虑使用这种结构:

UPDATE table_name SET field_name = concat('2011-01-12 ', time(field_name)) 

确保在日期之后添加空格('2011-01-12 ')。

答案 1 :(得分:13)

提前5天改变它:

UPDATE yourTableName
SET myDate1 = myDate1 + INTERVAL 5 DAY
WHERE myDate1 = dateIWantToChange

(你也可以使用MONTH,YEAR等)

答案 2 :(得分:2)

可能DATE_ADD是个好主意。 link text

答案 3 :(得分:1)

您可以使用Date_Add函数添加日期的各种组件以对其进行修改。看看这个:

http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_date-add

答案 4 :(得分:1)

使用类似的东西:

CONCAT('2011-01-28 ',DATE_FORMAT(original_timestamp, '%H:%i:%s'))

答案 5 :(得分:1)

检查查询

 update yourtable set eventtime=replace(eventtime,substr(eventtime,1,10), '2013-07-17')  WHERE  `id`=4
相关问题