2012-01-17 160 views
-2

我在表中有超過1百萬條記錄。如果不存在mysql插入更新

user_id name_id 
    1  1 
    1  2 
    2  1 

我有這樣的結構,我需要:

insert into (user_id,name_id) (1,2) 
  1. 如果記錄存在=更新名_ID
  2. 如果記錄doen't存在插入 USER_ID和名_ID

誰可以爲它編寫示例?它應該工作得很快。

+1

你有看看MySQL手冊嗎? – 2012-01-17 07:24:48

+0

我想問問你的建議,誰已經這樣做了。 – 2012-01-17 07:26:51

+0

@RadchenkoViktor:你應該準備好。告訴我們你嘗試失敗了。 – 2012-01-17 07:30:39

回答

4
insert into users (user_id, name_id) 
values (1, 2) 
on duplicate key update 
    name_id = values(name_id); 

你需要一個獨特的索引on duplicate key工作。

相關問題