2011-05-08 39 views
5

Estoy tratando de ejecutar la siguiente consulta de actualización:SQL - Actualizar una tabla con un campo de otra tabla

UPDATE Commodities 
INNER JOIN UniqueCountries 
    ON Commodities.wbCode = UniqueCountries.wbCode 
SET Idenb = UniqueCountries.wbName||yr 

La consulta es claramente erróneo, ya que no funciona. ¿Cómo puedo arreglarlo?


La consulta se supone para actualizar la columna IdenB con el valor concatenado de wbName y yr (wbName||yr). Sin embargo, wbName está en otra tabla llamada UniqueCountries, por lo que traté de realizar una unión interna.

¿Qué estoy haciendo mal y cómo puedo solucionarlo? Muchas gracias.

+0

¿Qué RDBMS estás utilizando? –

+0

Estoy usando sqlite. – relima

Respuesta

4

No puedo ver ninguna indicación in the docs que FROM o JOIN son compatibles con las declaraciones UPDATE.

Quizás podría intentar una sub consulta correlacionada si no es así.

UPDATE Commodities 
SET Idenb = (SELECT UniqueCountries.wbName||yr 
      FROM UniqueCountries 
      WHERE Commodities.wbCode = UniqueCountries.wbCode) 
+0

Muchas gracias. – relima

Cuestiones relacionadas