mysql批量更新,数据存在则更新,不存在则插入

SQL语句怎么写:判断工号user_no,如果存在这个工号,则更新这个工号的信息,如姓名username,性别sex等字段信息,如果没有这个工号,则插入这个工号的所有信息,如姓名username,性别sex等字段信息..这个sql语句要怎么写~

首先,要为工号字段user_no建立唯一索引。

SQL语句使用REPLACE代替INSERT即可,例如:
REPLACE INTO 表名 (user_no, username, sex) values (123, 'xyz', '女');

上面语句执行时候会字段判断123的user_no是否存在,存在就替换其名字和性别,否则就插入整行。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-04-15
写一个脚本完成,
1、先创立一个临时表
2、将需要批量更新的数据导入到临时表中
3、然后两张表联合起来判断插入还是更新。