更新表值时执行日期算术

时间:2016-02-19 17:11:51

标签: mysql sql

我尝试了所有可能的支架组合,但我不能让这条线路起作用!

我也试过寻找解决方案,但我似乎找不到类似的东西。我希望有人可以解释我的无知^^。

UPDATE contact_info SET birthday= CURDATE() - TIME_TO_SEC(NOW()) % 50000 WHERE contactID=1;

提前致谢!

1 个答案:

答案 0 :(得分:0)

您需要将计算的表达式转换为指定天数的INTERVAL。然后使用DATE_SUB从当前日期中减去间隔。

UPDATE contact_info
SET birthday = DATE_SUB(CURDATE(), INTERVAL (TIME_TO_SEC(NOW()) % 50000) DAY)
WHERE contactID = 1;