重复更新时mysql条件插入-多条记录

重复更新时mysql条件插入-多条记录,sql,mysql,insert,Sql,Mysql,Insert,如何将重复更新时的与多值插入一起使用 INSERT INTO tbl_name (key_id,field1,filed2) VALUES (1,2,3), (1,5,6), (1,8,9); 我现在无法尝试,但您不能使用此语法吗 INSERT INTO table (a,b,c) VALUES (1,2,3),(4,5,6) ON DUPLICATE KEY UPDATE c=VALUES(a)+VALUES(b); 从哪里来的 猜测您的语法如下所示: INSERT

如何将重复更新时的
与多值插入一起使用

INSERT INTO tbl_name 
  (key_id,field1,filed2) 
VALUES
  (1,2,3),
  (1,5,6),
  (1,8,9);

我现在无法尝试,但您不能使用此语法吗

INSERT INTO table (a,b,c) VALUES (1,2,3),(4,5,6)
  ON DUPLICATE KEY UPDATE c=VALUES(a)+VALUES(b);
从哪里来的

猜测您的语法如下所示:

INSERT INTO tbl_name
  (key_id,field1,filed2) 
VALUES
  (1,2,3),
  (1,5,6),
  (1,8,9)
ON DUPLICATE KEY
  UPDATE field1=VALUES(field1), field2=VALUES(field2);

你的预期结果是什么?我只能让MySQL允许对重复键UPDATE KEY\u id=KEY\u id+1
执行
(1,5,6),但在执行时,表中只有一行值:
2,2,3
。SQL就是一个例子,但预期的结果是运行一个查询,如果是新值,则插入,如果是重复值,则更新。因此,如果键id 1、3和5已经在数据库中,并且我为2、3、4和6运行INSERT。2,4和6应该插入,3应该更新,因为它是重复的我一定错过了这个,thnx