【发布时间】:2022-01-02 01:28:02
【问题描述】:
我试过把这句话sql从sybase迁移到oracle但是现在不知道怎么实现
dateadd 和 datepart。
select @v_date = convert(char,convert(char(4),datepart(year, dateadd(month, -13, getdate()))) + "/" +
right(( "00" + convert(varchar(2), datepart(month, dateadd(month, -13, getdate())))) , 2) + "/01", 112)
我已经搜索并知道 Oracle 使用 interval,但我仍然不明白如何。
【问题讨论】:
-
如果您解释一下该语句在 Sysbase 中的作用,将会很有帮助。就像您不了解 Oracle SQL 一样,大多数了解 Oracle 的人都不熟悉 Sysbase。这在日期算术的情况下尤其重要,因为这是每个 RDBMS 风格都发明了自己的函数名称和约定的领域。
-
背景:
getdate()返回当前日期和时间为数据类型datetime;各种功能正在将当前日期和时间切割成某种所需的格式;我建议用select convert(varchar(30),getdate(),109)和select @v_date的输出更新问题;这将为我们提供当前日期和时间以及最终输出;从此某人(具有 Oracle 知识)应该能够提出等效查询
标签: database oracle migration sybase