postgresql序列基本操作
1、创建序列
CREATE
SEQUENCE
if
not
exists test_mergetable_id_seq
INCREMENT 1
MINVALUE 1
MAXVALUE 999999999
START 1
CACHE 1;
//或者:
create
sequence
if
not
exists test_mergetable_id_seq increment
by
1 minvalue 1
no
maxvalue start
with
1;
2、指定序列(给表的主键指定创建好的序列)
alter table test_mergetable alter column "i_id" set default nextval('test_mergetable_id_seq');
3、设置序列自增长从当前最大值开始
SELECT setval('test_mergetable_id_seq', (SELECT MAX(i_id) FROM test_mergetable));
alter sequence test_mergetable_id_seq start with 12;
4、删除序列
drop sequence IF EXISTS test_mergetable_id_seq
5、查看序列
select nextval(seq_ commodity);返回下一个序列号后
select currval(seq_ commodity);返回当前的序列号
6、序列号改成和当前最大主键一致
select setval('xxx_id_seq', max(id)) from tableName;
知识分享,需人人参与,看完请点赞留言,共同讨论进步
分类:
postgresql
标签:
运维
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
2021-12-05 PostgreSQL lag,lead获取记录前后的数据