当我们有特定日期时如何去特定日期

how to go to a particular date when we have the specific date

我想在找到 "start date"

后前往特定日期

例如。我有列 start_date“01-OCT-2014”,但现在从该数据中获取年份“2014”后,我想创建一个名为 "fin_yr" 的列,该列应将 +1 添加到年份并显示日期“2015 年 7 月 1 日”

另一个例子:

start_date "23-APR-2013" 那么名为 "fin_yr" 的新列的值应该是 "01-Jul-2014" 非常感谢(请 Netezza 回答)

如果您的列名称是 "dt" 那么您可以通过这样做来增加 1 年:

SELECT DATEADD(year, 1, dt)
FROM foo

虽然我不明白你是怎么从 2013 年 4 月 23 日到 2014 年 7 月 1 日的。那就是增加 1 年 + 一些天数。例如,如果您想添加 1 年 + 99 天,您可以执行以下操作:

SELECT DATEADD(day, 99, DATEADD(year, 1, dt))
FROM foo

以下将在 Netezza 环境中工作,使用 extract 函数(date_part 也可以工作) 将年份加一,并将月份和日期设置为 7 月 1 日。

 SELECT start_date,
       to_date(extract(YEAR FROM start_date) +1 || '0701', 'YYYYMMDD') fin_year
    FROM (
          SELECT CURRENT_DATE start_date
       )
       foo;

 START_DATE |  FIN_YEAR
------------+------------
 2015-04-28 | 2016-07-01
(1 row)