Teradata 使用当前日期问题查找最近 1 年

Teradata Find last 1 year using current date issue

我正在使用

CURRENT_DATE- INTERVAL '13' MONTH

获取 13 个月的数据。 您看到此 returns 无效日期错误。因为当前日期(3 月 29 日)- 13 个月是无效日期(2015 年 2 月 29 日)。

难道我们没有一个内置函数来解决这个问题而不是编写某种自定义逻辑吗?

闰年对 INTERVAL 数学来说是地狱。而是使用 ADD_MONTHS():

ADD_MONTHS(CURRENT_DATE, -13)

INTERVAL 非常适合减去较小的时间单位。