在ORACLE中自动递增无序列的字段

时间:2013-11-27 09:34:58

标签: sql oracle jdbc auto-increment

我正在尝试增加没有序列的字段。有可能吗?  我可以做这样的事吗

INSERT INTO Test 
VALUES ((
         SELECT COUNT(ID) 
         FROM Test)+1)

请建议我这样做的方法

2 个答案:

答案 0 :(得分:1)

您可以使用@var_name = SELECT MAX(column_name) FROM TABLE

获取变量中的当前最大值

然后您可以使用ROW_NUMBER() OVER (ORDER BY column_name)+@var_name

答案 1 :(得分:1)

如果你的序列字段被称为seq_fld,例如你可以使用

insert into Test values ( (select max(seq_fld) from Test) + 1)

建议在seq_fld上加上唯一约束