INSERT INTO table (a,b,c) VALUES (1,2,3) ON DUPLICATE KEY UPDATE c=c+1;
比如我们希望向table中的a, b, c三个列添加数据1, 2, 3 ,结果已经这个表中的a, b, c中一个是主键或者是UNIQUE INDEX这种唯一键值,且恰表里面有这个值了(也就是可以触发唯一的键值重复),这条语句便会执行update后面的子句了。当然,如果没触发唯一键值的重复,自然就要执行Insert语句了。
详细见: http://lunae.cc/about-on-duplicate-key-update