批量更新Mysql中的数据库表数据

时间:2011-10-12 07:09:21

标签: mysql sql

HiI有两张桌子。

TBL1

id             int(11)      NOT NULL

positionName   varchar(20)  NULL

positionId     int(11)      NULL

TBL2

positionId         int(11)      NOT NULL

positionName       varchar(20)  NULL

最初,positionId中没有列tbl1。现在,对positionId使用positionName代替tbl1

问题是两个表中已经存储了数千个数据。

那么,我如何成功快速地链接到positionId的每个数据的正确tbl1,其中positionName之前使用过{{1}}?

批量更新是一种方式吗?

无论如何我可以使用SQL浏览器执行所有操作吗?如果可能的话,我不想使用编码。

非常感谢。

1 个答案:

答案 0 :(得分:1)

您是否正在寻找多表UPDATE,这样?

UPDATE tbl1
JOIN tbl2 ON tbl1.positionName = tbl2.positionName
SET tbl1.positionId = tbl2.positionId
WHERE tbl1.positionId IS NULL

我假设positionName中的tbl2是唯一的,但如果不是,那么您需要考虑如何处理它。