与另一个模式中的查找表进行比较时,在填充列时出错

时间:2012-08-23 11:42:16

标签: mysql where-clause lookup-tables

在将值与不同架构中的其他值进行比较时,我在尝试实现列'id'时遇到问题。

这是我正在使用的代码:

update oldb.incidencias set impact_id = 
    (select impact_id
    from
        newdb.impacts
    where
         olddb.incidencias.impacto = newdb.impacts.impact_type);

这是我得到的错误:

  

错误代码:1054。'where子句'中的未知列'olddb.incidencias.impacto'

1 个答案:

答案 0 :(得分:0)

你可以试试这个:

update o
set o.impact_id = n.impact_id
from  oldb.incidencias o
inner join newdb.impacts n 
  on o.impacto = n.impact_type

或者

update oldb.incidencias o
inner join newdb.impacts n 
  on o.impacto = n.impact_type
set o.impact_id = n.impact_id