当我想在mysql表中设置数值+1时,我使用例如:
UPDATE table SET number=number+1 WHEN ...
如何设置日期+一年?
由于
答案 0 :(得分:151)
答案 1 :(得分:16)
这篇文章今天对我有所帮助,但我不得不尝试做我需要的事情。这是我发现的。
如果您想添加更复杂的时间段,例如1年和15天,您可以使用
UPDATE tablename SET datefieldname = curdate() + INTERVAL 15 DAY + INTERVAL 1 YEAR;
我发现使用DATE_ADD
不允许添加多个间隔。并且没有YEAR_DAYS区间关键字,尽管还有其他组合时间段。如果您要添加时间,请使用now()
而不是curdate()
。
答案 2 :(得分:3)
对于多个区间类型,请使用嵌套构造,如:
UPDATE table SET date = DATE_ADD(DATE_ADD(date, INTERVAL 1 YEAR), INTERVAL 1 DAY)
用于将列date
中的给定日期更新为1年+ 1天