如果不存在mysql插入更新
问题描述:
我在表中有超过1百万条记录。如果不存在mysql插入更新
user_id name_id
1 1
1 2
2 1
我有这样的结构,我需要:
insert into (user_id,name_id) (1,2)
- 如果记录存在=更新名_ID
- 如果记录doen't存在插入 USER_ID和名_ID
谁可以为它编写示例?它应该工作得很快。
答
insert into users (user_id, name_id)
values (1, 2)
on duplicate key update
name_id = values(name_id);
你需要一个独特的索引on duplicate key
工作。
你有看看MySQL手册吗? – 2012-01-17 07:24:48
我想问问你的建议,谁已经这样做了。 – 2012-01-17 07:26:51
@RadchenkoViktor:你应该准备好。告诉我们你尝试失败了。 – 2012-01-17 07:30:39