我尝试了所有可能的括号组合,但我就是无法让这条线工作!
我也尝试寻找解决方案,但似乎找不到类似的东西。我希望有人能澄清我的无知^^。
UPDATE contact_info SET birthday= CURDATE() - TIME_TO_SEC(NOW()) % 50000 WHERE contactID=1;
提前致谢!
最佳答案
您需要将计算的表达式转换为指定天数的INTERVAL
。然后使用 DATE_SUB
从当前日期中减去间隔。
UPDATE contact_info
SET birthday = DATE_SUB(CURDATE(), INTERVAL (TIME_TO_SEC(NOW()) % 50000) DAY)
WHERE contactID = 1;
关于mysql - 更新表值时执行日期算术,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35510954/