pgsql查询主键自增序列名
时间: 2024-07-13 12:00:45 浏览: 274
ruoyi-postgresql设置自增序列.sql
5星 · 资源好评率100%
在PostgreSQL中,如果你想要查询一个表的主键自增序列名称,通常这个序列的名字会和表的主键字段名类似,前缀为"seq_"或"gid_"(对于全局唯一标识符),加上表名的别名或小写形式。例如,如果有一个名为`users`的表,其主键是`id`,那么对应的自增序列名字可能是`seq_users_id`或者`users_id_seq`。
如果你想直接获取该信息,你可以使用系统表`pg_class`和`pg_sequencedef`。以下是一个SQL查询示例:
```sql
SELECT
n.nspname AS schema_name,
c.relname AS sequence_name
FROM
pg_class c
JOIN
pg_namespace n ON c.relnamespace = n.oid
WHERE
c.relkind = 'S' -- 表示sequence类型
AND c.relname LIKE '%_' || quote_ident(current_schema) || '_%id_seq'; -- 匹配以特定模式的序列名
```
这个查询会在当前用户所属的schema中查找以`_id_seq`结尾的序列。如果你想要查询特定表的序列,替换`'%id_seq'`为表的实际主键字段名。
阅读全文