我使用Oracle數據庫選擇在表中的列的最大值沒有行
雖然在表中插入一行,我需要找到一個列的最大值和遞增1它,並使用該我插入的行的值。
INSERT INTO dts_route
(ROUTE_ID, ROUTE_UID, ROUTE_FOLDER)
VALUES (
(SELECT MAX(ROUTE_ID) + 1 FROM route) ,
ROUTE_UID,
ROUTE_FOLDER)
這工作正常,如果他們至少有一個表中的條目。 但是當它們在表中沒有條目時返回null。
當他們在表中沒有條目時,我如何獲得默認值1。
@changed必須警告您使用此方法可能會在具有併發性的系統中獲取重複值。風險與併發事務的數量成正比。我警告你,因爲它看起來就是你想要避免的。 – jachguate 2011-02-04 18:10:09