场景:比如,有一张表,专门记录业务里的唯一数据记录,这张表里如果存在此唯一数据的记录就更新此行数据的某个字段,如果此唯一数据不存在,那么就添加一条最新数据. 一贯操作:如果不知道mysql有 ON DUPLICATE KEY UPDATE 这种操作的话,一般的做法都是先select此表,如果存在就update,不存在的话就insert数据 ,这样做在高并发的场景下,是两条sql,会大大增加数据库负担. 优化: ON DUPLICATE KEY UPDATE ,一条语句完成以上两步操作. 简单举例