从另一个表实体更新MySQL表列

从另一个表实体更新MySQL表列,mysql,Mysql,我有两个表,需要使用表1中的一列更新表2中的一列。table2.id2为空,我必须使用table1.id填充它。另外,您必须知道,我在这些表中有两列可以相互匹配(table1.code和table2.code)。这是我的SQL: UPDATE table2 SET table2.id2 = table1.id WHERE table2.code = table1.code; 这个问题对吗?我得到这个错误,同时我确信table1.code存在 [Err]1054-where子句中的未知列“tab

我有两个表,需要使用表1中的一列更新表2中的一列。table2.id2为空,我必须使用table1.id填充它。另外,您必须知道,我在这些表中有两列可以相互匹配(
table1.code
table2.code
)。这是我的SQL:

UPDATE table2 SET table2.id2 = table1.id WHERE table2.code = table1.code;
这个问题对吗?我得到这个错误,同时我确信
table1.code
存在

[Err]1054-where子句中的未知列“table1.code”

不是那样的

拿这个来说:

UPDATE table2 SET id2 = (SELECT id from table1 WHERE code = 'somecode') WHERE code = 'somecode';

假设您可以使用代码连接两个表

UPDATE T2
  JOIN T1 ON T1.CODE = T2.CODE
SET
  T2.ID2 = T1.ID
WHERE
  T2.ID2 = '';

我不知道什么是表记录中的
somecode
。我必须对大约200条不同值的记录执行此操作,如
somecode
。也许我需要一个循环,但我不确定。此外,我在MySQL中编写循环方面也很弱