1、添加自增序列

CREATE SEQUENCE 表名_id_seqSTART WITH 1INCREMENT BY 1NO MINVALUENO MAXVALUECACHE 1;

alter table表名 alter column id set default nextval(‘表名_id_seq');设置表某个字段自增

从当前最大id依次递增

select setval(‘表名_id_seq',(select max(id) from 同一个表名));

大写字符的表需要加双引号。例如:

select setval('“表名_id_seq”',(select max(id) from “表名”));

补充:PostgreSQL中设置表中某列值自增或循环

在postgresql中,设置已存在的某列(num)值自增,可以用以下方法:

//将表tb按name排序,利用row_number() over()查询序号并将该列命名为rownum,创建新表tb1并将结果保存到该表中
create table tb1 as (select *, row_number() over(order by name) as rownum from tb);
//根据两张表共同的字段name,将tb1中rownum对应值更新到tb中num中
update tb set num=(select tb1.rownum from tb1 where tb.name = tb1.name);
//判断表tb1的存在并删除表
drop table if exists tb1;

在postgresql中,循环设置已存在的某列(num)值为0-9,可以用以下方法:

//将表tb按name排序,利用row_number() over()查询序号并将该列命名为rownum,创建新表tb1并将结果保存到该表中
create table tb1 as (select *, row_number() over(order by name) as rownum from tb);
//根据两张表共同的字段name,将tb1中rownum对应值更新到tb中num中,由于为0-9循环自增,则%10
update tb set num=(select tb1.rownum from tb1 where tb.name = tb1.name) % 10;
//判断表tb1的存在并删除表
drop table if exists tb1;
do $$
declare
v_idx integer :=0;
begin
while v_idx < 10 loop
update tb set num = v_idx;
v_idx = v_idx + 1;
end loop;
end $$;

其它:附录一个postgresql循环的写法(与上文无关)

补充:设置主键

alter table 表明 add primary key (字段名) ;

pgsql设置字段自增相关推荐

  1. pgsql设置字段id自增

    表已经建好后设置字段自增: CREATE SEQUENCE user_id_seq START WITH 1 INCREMENT BY 1 NO MINVALUE NO MAXVALUE CACHE ...

  2. MySQL设置字段从指定数字自增,比如10000

    MySQL设置字段从指定数字自增,比如10000. 方式一 方式二 方式一 此时就解决了MySQL从指定数字进行自增 CREATE TABLE hyxxb(hyid INT AUTO_INCREMEN ...

  3. hive导数据到mysql 自增主键出错_老大问我:“建表为啥还设置个自增 id ?用流水号当主键不正好么?”...

     前言"又要开始新项目了,一顿操作猛如虎,梳理流程加画图.这不,开始对流程及表结构了.我:吧啦吧啦吧啦 --老大:这个建表为啥还设置个自增 id ?直接用流水号(用户号/产品号)当主键不就行 ...

  4. 两个datatable合并 主键一样覆盖_MySQL 建表为啥还设置个自增 id ?用流水号当主键不正好么?...

    又要开始新项目了,一顿操作猛如虎,梳理流程加画图.这不,开始对流程及表结构了. 我:吧啦吧啦吧啦 -- 老大:这个建表为啥还设置个自增 id ?直接用流水号(用户号/产品号)当主键不就行了? 我:这个 ...

  5. JPA学习笔记---JPA实体Bean的建立---链接上一个博文:对实体Bean中属性进行操作:保存日期类型,设置字段的长度,名字,是否为空,可以声明枚举字段;可以存放二进制数据,可以存放

    3.给上述生成的那个name字段:更改数据库中的字段名,是否为空,字段长度的设定,只需要   在Person.java文件中,加上 @Column(length=10,nullable=false,n ...

  6. sql server 数据库 设置id 自增

    目录 一,建表时设置 1.1 建表时 1.1.1 通过可视化设置数据表主键自增 1.1.2 通过SQL语句 创建自增 二,建表后设置 问题分析: 问题解决: SQL server 设置列自增长 一,建 ...

  7. Navicat设置字段类型

    Navicat设置字段类型 Navicat这个工具,使用非常方便. 我们经常遇到修改数据库的字段类型,很多时候会报错,如下 意思是:数据表里面的数据太长,设置的字段类型不合理. 大多的错误,是由于该数 ...

  8. finereport字段显示设置_QA | 表单如何设置字段显示逻辑?

    Hi,大家好!表姐又来给大家答疑解惑啦!这一期的Q&A我们来聊聊表单如何设置字段显示逻辑. 字段显示逻辑是什么? 字段显示逻辑是指根据设定字段条件,显示或隐藏特定的字段,可以实现选择不同内容, ...

  9. oracle使一个字段自增,Oracle数据库实现一个字段自增

    对于SQL SERVER数据库实现字段自增比较简单,可以之间使用函数:identity(),例如我们在建表时可以这样实现: create table tbRentInfo( sID int ident ...

最新文章

  1. 新年新气象,该换一波壁纸了!
  2. jQuery中选择器加尖括号的区别
  3. 下一个更大元素 leetcode-496
  4. windows上的python能否在unix上使用_怎么用python在Windows系统下,生成UNIX格式文件
  5. mysql 修复表和优化表
  6. fms +fme 视频直播
  7. 能源行业将被重构,大数据有哪些“挖”法?
  8. delphi2010:按键 控制键 组合键的判断 响应
  9. Eclipse编译项目内存溢出,修改配置
  10. win10怎么进入修复计算机,win10开不了机的修复方法步骤
  11. 如何解决笔记本键盘突然失灵的问题
  12. 微星主板前置音频接口的连接说明
  13. NVMe Driver 需要装吗_厨房里的油烟很少,需要装油烟净化器吗?装哪种的比较好?...
  14. UOS主动安全防护计划(UAPP)正式发布,共建信创基础软件平台安全底座
  15. 有序边表算法----计算机图形学
  16. 解密库尔勒可靠性检测
  17. 【云原生之Docker实战】使用Docker部署MrDoc个人在线文档系统
  18. rovisional headers are shown Learn more 报错
  19. 51、【网工必备】两种常见网络拓扑图介绍,一看就会
  20. java异常在控制台和日志里面的打印记录

热门文章

  1. 算法设计与分析—— 绪论
  2. 将边缘计算、5G应用开发进行到底!
  3. Python使用QQ邮箱发送验证码
  4. LED显示屏APP开发模式设计
  5. SpringCloud系列教程(五)之SpringCloud Gateway 网关聚合开发文档 swagger knife4j 和登录权限统一验证【Hoxton版】
  6. spring cloud 快速上手系列 -> 04-网关 Gateway -> 041-空的工程
  7. 身价10亿的打工皇帝-唐骏
  8. 全网最全音视频媒体流
  9. 漂移的农民工,何处才是你的浮木
  10. Excel 2010中的条件格式