-1

我使用 postgres 作为我的数据库,并且我有一个包含日期列的表。此列中的当前值为 2021-04-1 17:19:08

我想更新此列的值并将日期 20(或任何其他天数)提前,因此新值将是 2021-04-20 17:19:08

我不手动执行此操作的原因是因为我有太多行要前进所以我需要一个查询,我需要自由选择未来的天数

提前致谢

4

2 回答 2

1

您可以使用 - 添加天数INTERVAL-

SELECT CURRENT_DATE + INTERVAL '20 days';
于 2021-08-19T13:28:42.237 回答
0

在 Nikhil Patil 的帮助下,我设法创建了下一个查询:

select 'UPDATE itpserver.managed_incidents SET trigger_time = ''' || trigger_time || ''' where id = ' || id::text || ';'

from (

      select id, trigger_time + INTERVAL '120 days' trigger_time

      FROM itpserver.managed_incidents 

) a

where 1=1

group by id,trigger_time

order by id

该查询创建了我需要的所有更新查询,以便更新表中的所有行。( trigger_time 是日期列)。

在它创建了我需要的所有更新查询之后,我将它们作为 sql 脚本同时运行

于 2021-08-19T14:39:25.073 回答