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

标签 sql mysql insert

如何将 ON DUPLICATE UPDATE 与多值 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);

来自 manual

猜猜你的语法会是这样的:

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);

关于sql - 重复更新时的mysql条件插入 - 多条记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2224442/

相关文章:

mysql - 在mysql中存储固定数量的项目

java - 将 Android 应用程序中的数据插入到 mySql 数据库中

php - 为什么这个准备好的插入到 MySql 中时 PDO 插入了错误的值?

mysql - and 与 AND 之间有区别吗

MySQL:如果存在则插入或更新,但不基于键列

php LOAD DATA LOCAL INFILE csv 到 mysql

Sql如果不存在则插入多行

java - SQL异常 : the result set is closed

sql - 如何使用多个左连接优化 SQL 查询

php - 如何针对我的 xoops 网站问题通过 sql 命令或 phpMyAdmin 禁用对 mysql 表的写入访问