将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005

已知id为5的该条数据为:

('5', '10001', 'Senior Engineer', '1986-06-26', '9999-01-01'),

所以,可以有以下几种方式:

1、使用replace

UPDATE titles_test
SET emp_no = REPLACE(emp_no, 10001, 10005)
WHERE id = 5;

2、使用insert

有遇到重复主键了就进行更新emp_no的值

INSERT INTO titles_test 
    VALUES(5, 10001 ,'Senior Engineer', '1986-06-26', '9999-01-01') 
    ON DUPLICATE KEY UPDATE emp_no = 10005;

3、使用replace into

REPLACE INTO当遇到primary 或者 unique key 的时候,会首先进行update

REPLACE INTO titles_test 
    VALUES(5, 10005 ,'Senior Engineer', '1986-06-26', '9999-01-01') ;

关于插入insert 、replace 的一些用法,可以见我的博客:

Mysql 之 插入数据(insert into 、 replace into 解析)