PostgreSQL如何仅更新日期的Year部分

Tom*_*mmy 2 postgresql

我在PostgreSQL中有一张表。该表有一个月份列和一个mydate列。月份的值为Jan,而mydate的值为2017-01-01

我想更新该值以2018年1月1日,但我不希望有硬在2018日期编码去做。我想使用date_part函数,但是不确定我是否正确地使用了这个函数。

到目前为止,这是我尚未完成的工作,我被困在完成此查询所需的工作上:

UPDATE tblshopstatus
Set mydate = mydate + date_part('year') -----I am stuck on this line----
WHERE months = 'Jan'
Run Code Online (Sandbox Code Playgroud)

更多示例:

在月份列中,我列出了所有12个月。

在mydate列中,我列出的日期是12个月内的2017-01-01、2017-02-01等。

有没有办法将所有月份的年份都增加到2018年。

Clo*_*eto 6

set mydate = mydate + interval '1 year'
Run Code Online (Sandbox Code Playgroud)