DATE_ADD 函数

DATE_ADD Function

我网站上的代码故障导致 sql table 中的开始日期和结束日期被设置为我的在线会员目录的同一天。我已经纠正了代码故障,但现在需要一种方法来修复数据库中的数据。我正在尝试根据包列向 end_date 列添加一定数量的月份(12、18、24 等)。我只想在 start_date 列等于 end_date 列时执行此操作。我启动了一个查询,但将 运行 保留为无效语法消息。有人可以帮忙吗?我的sql低于

UPDATE porye_jbusinessdirectory_orders
SET end_date = DATE_ADD(months,12,end_date)
WHERE start_date = end_date
AND package_id = 1;

SET end_date = DATE_ADD(start_date, INTERVAL 12 MONTH)

这是给 MySQL 的。

如果我没理解错的话,你想改用 DATEADD

你的语法看起来像 DATEADD (datepart , number , date ) 而不是 DATE_ADD

的语法
UPDATE porye_jbusinessdirectory_orders
SET end_date = DATEADD(month, 12 ,end_date)
WHERE start_date = end_date
AND package_id = 1;

查看更多here