MYSQL - 从一个表更新插入到另一个表

标签 mysql upsert

我正在尝试使用 upsert 来更新和/或从另一个表插入

INSERT INTO table1 (
  `uniqueCol1`, 
  `uniqueCol2`, 
  `created`, 
  `dataCol`
) 
VALUES (
   1, 
   t1.uniqueCol2Value, 
   NOW(), 
   t1.dataColValue 
) 
ON DUPLICATE KEY UPDATE
   `dataCol` = t1.dataColValue

现在据我所知,我不知道如何将我认为应该是 FROM table2 t1 的内容添加到其中以获取值并将它们放入 table1

最佳答案

我建议:

INSERT INTO table1 (
  `uniqueCol1`, 
  `uniqueCol2`, 
  `created`, 
  `dataCol`
) 
SELECT 1, uniqueCol2Value, NOW(), dataColValue FROM table2

关于MYSQL - 从一个表更新插入到另一个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31170013/

相关文章:

php - mysql 结合随机排序()和按值排序——可能吗?

初始值不为零的 Mongodb 计数器

Cassandra Upsert 不适用于每列

mysql - 在 MySQL 中创建 Unix 时间戳

mysql - PhpStorm : Generate a database Initialization script

php - 两个外键,如何用 laravel eloquent 映射

sql - SQL Server 2005 的首选合并方法是什么?

sql - Postgres UPSERT 在更新时重用 INSERT 中的列值

mysql - 插入mysql数据库,如果记录已经存在,则更新

php - fatal error : Call to a member function query() on null