2017-10-12 400 views
-2

我有一張表,我試圖插入新行,但有一列不自動增加它自己。有沒有辦法編寫一個INSERT命令,根據該列中的最高值自動增加一列?在INSERT命令中自動遞增

+0

您使用的是什麼RDBMS(Sql server,mysql,oracle,postgres等)? – JNevill

+0

添加查詢和表結構到你試過的問題? –

+0

請看這個答案https://stackoverflow.com/questions/13994736/how-to-insert-an-auto-increment-key-into-sql-server-table – Saif

回答

0

我認爲使用子查詢就是你要找的東西。 根據您使用MySql或SqlServer或任何其他類型,請考慮進行必要的修改。改變表格以使其自動增量將是最簡單的方法。

一個MySQL例子如下:

INSERT INTO tableinquestion (id, column2, column3, ...) 
VALUES (((SELECT id FROM tableinquestion ORDER BY id DESC LIMIT 0, 1)+1), value2, value3, ...); 
+0

你也應該增加 – scaisEdge

+0

增量在哪裏! – Saif

+0

@Saif編輯答案。只需選擇最新的ID並添加+1並且有'增量'。 – abr

0

最簡單的方法是改變表並添加標識。這將完成這項工作

ALTER TABLE yourTableName 
ADD ID INT NOT NULL IDENTITY