📅  最后修改于: 2023-12-03 15:09:14.747000             🧑  作者: Mango
在 PostgresSQL 中,每个表都有一个序列(sequence),它为表提供唯一的 ID,常常用作主键。获取表序列的方法取决于序列是否已经定义,下面将介绍两种获取序列的方法。
如果序列已经定义,可以通过以下 SQL 语句获取表序列:
SELECT nextval('table_name_id_seq');
其中,table_name_id_seq
是 PostgresSQL 对该表定义的序列名称。
使用该 SQL 语句将返回表序列的下一个值,也就是表中最新记录的 ID 值。
如果尚未定义表序列,可以通过以下 SQL 语句定义该序列并获取表序列:
CREATE SEQUENCE table_name_id_seq;
SELECT currval('table_name_id_seq');
使用该 SQL 语句可以创建一个名为 table_name_id_seq
的序列,并返回序列的当前值。
在定义序列之后,可以使用第 1 种方法获取表序列。
总结:
SELECT nextval('table_name_id_seq')
获取表序列。CREATE SEQUENCE table_name_id_seq
创建序列,再使用 SELECT currval('table_name_id_seq')
获取表序列。