SELECT语句中的下一个值

时间:2016-10-03 18:30:51

标签: sql oracle

我想在多个select语句中使用相同的序列号 在SQL表单中最终将它用作表中的PK插入并将多个记录绑定在一起。

到目前为止,我只能从双重选择NEXTVAL:

SELECT TEST_SEQ.NEXTVAL AS SEQ FROM DUAL;

然而,当我将序列包含在多列选择中时,我得到序列不允许这里错误。

SELECT col1, co2, col3, (select TEST_SEQ.NEXTVAL) SEQ
FROM table; 

非常感谢任何帮助。

3 个答案:

答案 0 :(得分:2)

不要使用子选择:

SELECT col1, co2, col3, TEST_SEQ.NEXTVAL as SEQ
FROM table; 

答案 1 :(得分:1)

从DUAL中选择SEQ_FMLGDPR.NEXTVAL;

答案 2 :(得分:0)

如果要从序列对象中选择下一个值,则可以使用此SQL语句。

SELECT NEXT VALUE FOR [dbo].[seq_Vehicles] AS NextVehicleId

如果要从SQL序列中选择多个下一个值,则必须循环调用上述SQL语句,然后将获得的“下一个值”保存在存储器中。

您可以使用(while循环)或by(光标)进行循环。