¿Cómo puedo hacer tres combinaciones de tablas en una consulta de ACTUALIZACIÓN?
Hice una pregunta y obtuve esta respuesta que me ayudó.
UPDATE TABLE_A a JOIN TABLE_B b
ON a.join_col = b.join_col AND a.column_a = b.column_b
SET a.column_c = a.column_c + 1
Ahora estoy buscando hacer esto si hay tres tablas involucradas, algo como esto.
UPDATE tableC c JOIN tableB b JOIN tableA a
Mi pregunta es básicamente... ¿es posible hacer tres combinaciones de tablas en unUPDATE
declaración? ¿Y cuál es la sintaxis correcta?
¿Hago lo siguiente?
JOIN tableB, tableA
JOIN tableB JOIN tableA
Aceptado
La respuesta es sí , puedes.
Pruébalo así:
UPDATE TABLE_A a
JOIN TABLE_B b ON a.join_col = b.join_col AND a.column_a = b.column_b
JOIN TABLE_C c ON [condition]
SET a.column_c = a.column_c + 1
Para una actualización general únete:
UPDATE TABLEA a
JOIN TABLEB b ON a.join_colA = b.join_colB
SET a.columnToUpdate = [something]
Una forma alternativa de lograr el mismo resultado es no utilizar la JOIN
palabra clave en absoluto.
UPDATE TABLE_A, TABLE_B
SET TABLE_A.column_c = TABLE_B.column_c + 1
WHERE TABLE_A.join_col = TABLE_B.join_col