在PostgreSQL中基于时间更新行

在PostgreSQL中基于时间更新行,sql,events,postgresql,time,sql-update,Sql,Events,Postgresql,Time,Sql Update,在PostgreSQL中,基于时间更新表的最佳方法是什么 例如,我有一个包含以下记录的数据库 ColumnA StartTime EndTime 123 02:05:01 02:06:01 456 02:06:01 02:07:01 是否可以基于EndTime列(可能是时间事件)更新ColumnA的值?例如,如果服务器的时间为2:06:01,则值123将增加100 我尝试使用pgagent,但我认为它不适合特定于时间的事件(秒),尤其是当数据库有大量行时

在PostgreSQL中,基于时间更新表的最佳方法是什么

例如,我有一个包含以下记录的数据库

ColumnA  StartTime  EndTime
123      02:05:01   02:06:01   
456      02:06:01   02:07:01
是否可以基于EndTime列(可能是时间事件)更新ColumnA的值?例如,如果服务器的时间为2:06:01,则值123将增加100

我尝试使用pgagent,但我认为它不适合特定于时间的事件(秒),尤其是当数据库有大量行时


你能为这个问题提出解决方案吗。谢谢。

您想按服务器时间触发更新。
一种方法是为此创建一个cronjob。在Linux机器上以用户postgres(或任何您想要运行它的用户)的身份调用
crontab-e
,并在您选择的时间安排类似的事情:

psql mydb -p5432 -c 'UPDATE tbl SET columna = columna + 100 WHERE columna = 123'
顺便说一句,我建议不要在PostgreSQL中使用混合大小写标识符