2017-08-02 74 views
-1

我想在Oracle中創建一個序列號。 我已經試過此查詢我想在oracle中創建序列號

alter table tablename add(ID NUMBER); 

CREATE SEQUENCE SEQ_ID START WITH 1 INCREMENT BY 1 MAXVALUE 31611805 MINVALUE 1 NOCYCLE; 

UPDATE tablename SET ID= SEQ_ID.NEXTVAL 

我有,

NID 
----- 
ABD90 
BGJ89 
HSA76 

,我想:

ID NID 
--------- 
1 ABD90 
2 BGJ89 
3 HSA76 

上面的代碼是不工作。我對oracle很陌生,請幫忙產生上面的結果。

+0

什麼是不工作的,什麼是錯誤 – user7294900

+0

它沒有顯示任何錯誤,但它沒有給出任何結果以及。 –

+0

'update'不會返回任何結果 –

回答

1

如果要添加唯一的ID爲每個NID那麼,你能做到這way-

UPDATE tablename t 
     SET t.ID = 
       (SELECT SEQ_ID.NEXTVAL 
       FROM tablename sub_t 
       WHERE t.NID = sub_t.NID);