如何替换整数



我有一个(Postgres(表,其中有一个整列填充的epoch(时间(值。昨天,我犯了一个错误,用错误的历元值填充了它们。现在我需要将所有时间列值1609804800更改为1609718400以下内容:

time
1609804800
1609804800
1609804800
..goes on..

我的预期结果:

time
1609718400
1609718400
1609718400
..goes on..

我的最后一个查询类似于:

UPDATE 
history
SET 
time = REPLACE(time,1609804800,1609718400)
WHERE 
condition

我在psql参考页面上发现了一些关于regexp_replace的有用内容,但得到了:

错误:函数regexp_replace(integer,unknown,unknowns(不exist LINE 1:选择不同的regexp_replace(时间,"1609804800",16097184…

我想用新值替换这些整数值。我不知道这是否可能,但这会加快速度,因为我总共有数百行。我试过搜索谷歌和StackOverflow,但我看不出它指的是什么。有人能解释一下它是如何使用的吗?非常感谢。

您需要将您的条件放入其中。并且条件将是CCD_ 1。

这里的模板类似于SET Colum_name = value(您想用它更新(WHERE (put your conditions here ),在您的情况下是WHERE time = 1609804800

UPDATE history
SET time = 1609718400
WHERE 
time  = 1609804800

参考

您可以使用一个以上的WHERE条件,如下所示:

UPDATE history
SET time = 1609718400
WHERE time  = 1609804800
and ...condition...

最新更新