您好我需要创建一个程序来将特定行更新到"当前年份" 执行函数时的当前年份。如果可以在不需要指定月份或日期的情况下完成此操作,则允许将多个日期更新到最近一年而不影响日期。
我搜索的大多数帖子/结果导致了解如何选择当前年份的项目,但我找不到有关设置当前年份的任何信息(无需手动输入或使用ADD DATE)
我当前名为tblevents
的表格如下
|EventID|StartDate |EndDate |EventFee|
|1 |2005-12-20 00:00:00|2005-12-20 00:00:00|350 |
|2 |2005-12-20 00:00:00|2005-12-20 00:00:00|320 |
|3 |2005-12-20 00:00:00|2005-12-20 00:00:00|100 |
|4 |2005-12-20 00:00:00|2005-12-20 00:00:00|200 |
|5 |2005-12-20 00:00:00|2005-12-20 00:00:00|650 |
我首先尝试仅使用UPDATE执行查询以便习惯它,到目前为止我已经尝试了很多变体
UPDATE `tblevents`
SET `StartDate` = '(SELECT YEAR(CURDATE()))-12-20', `EndDate` = '(SELECT
YEAR(CURDATE()))-12-20'
WHERE `EventID`=3;
并尝试了这个:
SELECT YEAR(CURDATE()) AS 'CYEAR';
UPDATE tblevents SET `StartDate` = 'CYEAR-12-05', `EndDate` = 'CYEAR-12-07'
WHERE `EventID`=3;
我很想知道更新查询出错的地方,以及如何使用过程完成此操作。
我收到语法错误或日期设置为0000-00-00 00:00:00
答案 0 :(得分:1)
如果要将日期设置为当前年份,可以使用日期操作:
vector