我有2张 table 。一个来自昨天(30 万行),另一个来自今天,行数相同,但某些列中的数据发生了变化。

这两个表大约有 120 列。

我怎样才能只更新更改。
我试过使用 delete :

   delete from tableA
   where id in (select id from tableB)

但是太慢了。
也试过
   update tableA inner join tableB
   on tableA.id=TableB.id

它没有奏效。

MYSQL - 从另一个表更新多行-LMLPHP

最佳答案

您必须在更新查询中设置值才能获取更改。

例子:

update tableA inner join tableB on tableA.id=TableB.id
set tableA.col1=TableB.col1,
    tableA.col2=TableB.col2,
    tableA.col3=TableB.col3;

并且您还可以在 where 子句中添加更多条件以使查询在过滤记录上运行。

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

10-14 00:06