如何在Oracle查询中仅获取一个特定的NEXTVAL结果?

时间:2018-10-15 18:48:47

标签: sql oracle plsql

在存储的过程中,我运行类似soi的查询:

SELECT NETWORKOWNER.BUS_SEQ.NEXTVAL@LEGACYSMITH.WORLD 
FROM TBLDECIDERCONTRACT@LEGACYSMITH.WORLD
WHER PROVID = 28938

怎么会只会一个 NEXTVAL结果?

2 个答案:

答案 0 :(得分:5)

使用dual

SELECT NETWORKOWNER.BUS_SEQ.NEXTVAL@LEGACYSMITH.WORLD FROM dual

答案 1 :(得分:4)

或更笼统地说:确保您的FROM和WHERE子句仅导致找到一行-然后NEXTVAL将仅执行一次。

此外,始终可以通过在PL / SQL中本地调用单个NEXTVAL执行来获得执行,如下所示:

DECLARE
   l_seq INTEGER;
BEGIN
   l_seq := my_sequence.NEXTVAL;
END;