[postgres]序列

简介: [postgres]序列

前言

序列都是用create sequence命令创建的单行表,常用于为表的行生成唯一的标识符。

相关函数

函数 作用
nextval() 递增序列并返回新值
currval() 返回最近一次用nextval()函数获取的指定序列的值
lastval() 返回最近一次用nextval()函数获取的任何序列的值
setval() 设置序列的当前值

基本操作

  • 创建递增序列,最小为0,步长为2,从4开始自增
create sequence seqtest as int increment 2 minvalue 0 start 4;
  • 列出序列
select *  FROM pg_catalog.pg_sequences;
  • 递增序列并返回新值
select nextval('seqtest');
--       4
select nextval('seqtest');
--       6
select nextval('seqtest');
--       8
  • 返回最近一次用nextval()函数获取的指定序列的值
select currval('seqtest');
-- 8
  • 返回最近一次用nextval()函数获取的任何序列的值
select lastval();
-- 8
  • 设置序列当前值
select setval('seqtest', 20);
  • 删除序列
drop sequence if exists public.seqtest;
  • 建表时指定主键为序列
CREATE TABLE my_table (
    id INTEGER PRIMARY KEY DEFAULT NEXTVAL('seqtest'),
    c1 VARCHAR(50)
);
-- 写入数据测试
insert into my_table (c1) VALUES ('asdf');
相关文章
|
Go Windows
windows安装scoop/annie下载B站等视频
windows安装scoop/annie下载B站等视频
555 0
|
SQL Oracle 前端开发
提高工作效率的万能Java行列转换工具类
提高工作效率的万能Java行列转换工具类
619 0
GEE:如何批量处理并下载指定时间范围的月尺度NDVI数据集(MOD09GA为例)
GEE:如何批量处理并下载指定时间范围的月尺度NDVI数据集(MOD09GA为例)
1375 0
|
测试技术 Python
Pytest系列(16)- 分布式测试插件之pytest-xdist的详细使用
Pytest系列(16)- 分布式测试插件之pytest-xdist的详细使用
1024 0
|
缓存 网络协议 物联网
UDP的可靠性传输
UDP的可靠性传输
641 1
|
人工智能 搜索推荐 安全
人工智能与未来社会:探索AI在教育领域的革命性影响
本文深入探讨了人工智能(AI)技术在教育领域的潜在影响和变革。通过分析AI如何个性化学习路径、提高教学效率以及促进教育资源的公平分配,我们揭示了AI技术对教育模式的重塑力量。文章还讨论了实施AI教育所面临的挑战,包括数据隐私、伦理问题及技术普及障碍,并提出了相应的解决策略。通过具体案例分析,本文旨在启发读者思考AI如何助力构建更加智能、高效和包容的教育生态系统。
|
弹性计算 并行计算 Linux
【玩转AIGC系列】从0快速搭建个人版“对话大模型”
本教程介绍如何在阿里云GPU云服务器上基于Alpaca大模型快速搭建个人版“对话大模型”。
【玩转AIGC系列】从0快速搭建个人版“对话大模型”
|
SQL 存储 数据采集
sql中varchar转number时报错怎么解决
通过上述策略的综合运用,面对VARCHAR到NUMBER的转换挑战,不仅能够游刃有余地解决现有的问题,更能前瞻性地预防未来的隐患。在数字化转型的浪潮中,凭借其高性能、安全稳定的云产品与服务,为各类企业级应用保驾护航,助您轻松驾驭数据的海洋,实现业务的无缝扩展与全球布局。
711 0
|
Linux iOS开发 MacOS
Matplotlib 教程 之 Matplotlib 中文显示 2
Matplotlib 中文显示教程,介绍如何通过设置 Matplotlib 字体参数或下载支持中文的字体库来实现中文显示。适用于 Windows、Linux 和 macOS 系统,确保图表中文本正确呈现。
506 0
|
人工智能 负载均衡 监控