UPDATE tobeupdatedINNER JOIN original ON (tobeupdated.value = original.value)SET tobeupdated.id = original.id
那应该做到,实际上它确实在做您的工作。但是,我更喜欢使用“ JOIN”语法进行连接,而不是使用多个“ WHERe”条件,我认为它更易于阅读
至于运行缓慢,表有多大?您应该在
tobeupdated.value和上都有索引
original.value
编辑:我们还可以简化查询
UPDATE tobeupdatedINNER JOIN original USING (value)SET tobeupdated.id = original.id
USING当联接的两个表都具有相同的名称(
key例如)时,它是简写形式
id。即一个等值联接-http:
//en.wikipedia.org/wiki/Join_( SQL)#Equi-join



