我现在在使用dateadd()函数时遇到麻烦。基本上我想将1天添加到cexpireday(timestamp),如果它是当前日期之后至少10天。
我尝试了两种方法,但都没有作用
update card
set cexpireday = dateadd(day,1,cexpireday)
where cexpireday - current_timestamp() >= '0000-00-10 00:00:00'
和
update card
set cexpireday = date_add(cexpireday,INTERVAL 10 day )
where datediff(day,cexpireday,current_timestamp) >= 10
第一个出现“ dateadd不存在”,第二个出现“参数不正确以导航函数datediff()”的情况。
有人可以帮我吗?
答案 0 :(得分:0)
也许尝试一下:
UPDATE card
SET cexpireday = DATE_ADD(cexpireday, INTERVAL 1 DAY)
WHERE cexpireday > DATE_ADD(NOW(), INTERVAL 10 DAY)
答案 1 :(得分:0)
您需要使用DATE_ADD
而不是dateadd
。
您还需要查看文档。
这是示例如何使用它DATE_ADD(日期,INTERVAL 10 DAY)。
此外,DATEDIFF
期望有2个参数start_date和end_date并返回2个日期之间的天数。