(转) MySQL 一次写入多条记录并更新重复记录的SQL语法
原贴:http://hi.baidu.com/nginxcn/blog/item/394c6660e0e2cc7d0d33fa48.html
当我们想再MySQL中一次性写入多条记录的时候可以这样写SQL语句:
insert into t(a,b,c) values ('a1','b1','c1'),('a2','b2','c2');
其中t是表名,括号中为字段名,values关键词后面每个括号里写入每条记录的字段数据,多条数据括号中间用逗号隔开。
如果一次性写入多条数据的时候,想把已经存在的字段记录更新,那么可以这样写SQL语句:
insert into t(a,b,c) values ('a1','b1','c1'),('a2','b2','c2') on duplicate key update t.c=values(t.c);
其中使用的是values函数。