如何将Postgres中序列的值设置为该表的max(value)+ 1?

时间:2016-07-28 18:37:10

标签: postgresql

我创建了一个带有SERIAL列的表,但我也手动插入了一些行。我需要更新SERIAL,以便进入下一个。

1 个答案:

答案 0 :(得分:1)

假设您的序列名为$seq。如果您使用SERIAL创建表格:

CREATE TABLE foo {id SERIAL, .... }

序列将被称为foo_id_seq

这样做:

SELECT setval('foo_id_seq', (SELECT max(id) FROM foo), TRUE)