如果没有必须累加1的要求,允许跳号的话,最好使用sequence, 没有性能问题。
创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站设计、网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的洋县网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
可以在创建sequence的时候设定开始值就是100000,插入的时候用select sequenceName.Nextval 就可以自增长。
如果不采用这种方式,可以新建一张表存放当前ID的最大值,每次从这里取值,然后再update + 1. 记得需要for update锁表,以免并发时号码重复。不建议这种方式,性能比较差
比如你要按name 进行group by ,然后按name排序
select row_number() over (order by name) rn,name,sum(计算值) from 表名 group by name
需要先创建序列,然后nextval添加数据使其自动生成序号。 1、创建表: create table test(id int,name varchar2(20));2、创建序列: Create sequence seq_test_idIncrement by 1Start with 1Maxvalue 999999Minvalue 1Nocyclenocache;3、插入数oracle 数据库 数据表自动生成序号 怎么添加??