2012-11-26 62 views
6

基本上我有一個版本的產品,將自動增量值複製到插入的另一列?

所以它有兩個感興趣的列的表,id | product_id

idautoincrement列,
product_id只是一個int

當一個產品是第一創建product_id來自id, 當產品編輯我們複製行,所以product_id是相同的,但id是不同的ENT。所以,當我們第一次創建我們做兩個查詢的產品,

插入,然後update table whatever set product_id = id where id = {the insert id}

這工作,但我想知道是否有辦法做到這一點在一個查詢?

注意我們只能訪問插入,更新,刪除。沒有觸發器或存儲過程。

回答

2

使用LAST_INSERT_ID()功能:

update table whatever set 
product_id = id 
where id = last_insert_id() 
+2

這是本質我們在做什麼,但我想知道是否有在這兩個值聯繫起來的方式插入? – Hailwood

+0

您可以查詢目錄表以查找下一個增量值。我忘記了它是哪一個 – Bohemian

+3

這不是對問題的回答問 – inemanja

0

這是單號查詢:

insert into whatever 
set product_id = last_insert_id() + 1; 
+1

如果您有多個表插入行,則無法保證這將起作用。 –

相關問題