SQL> select * From r5events;
ID EVT_REPORT EVT_UDFDAT
---------- ---------- ----------
1 07/01/2023 --> add 5 to this date because it is equal to 7th of January 2023
2 25/12/2022 --> you didn't say what to do if date isn't 7th of January 2023,
so I'm leaving it "as is"
更新声明:
SQL> update r5events e set
2 e.evt_udfdate10 =
3 e.evt_reported + case when e.evt_reported = date '2023-01-07' then 5
4 else 0
5 end;
2 rows updated.
结果:
SQL> select * From r5events;
ID EVT_REPORT EVT_UDFDAT
---------- ---------- ----------
1 07/01/2023 12/01/2023 --> 5 days added to EVT_REPORTED
2 25/12/2022 25/12/2022 --> nothing has been added
SQL>
2条答案
按热度按时间eoigrqb61#
除了missing _ in to_char之外,如果这是完整的SQL语句,那么末尾的尾随逗号将引发错误。
xdnvmnnf2#
实际上,您应该比较日期与日期,而不是将日期转换为字符串,然后比较字符串与字符串。
样本数据:
更新声明:
结果:
如果
evt_reported
包含与 * 午夜 * 不同的时间成分,则update
* 可能 * 需要调整。如果您发布了表描述、样本数据和所需结果,则会更容易提供帮助。