Al momento de querer ejecutar un update en una base de datos de ORACLE al resultado de la union de dos tablas (inner join oracle) lo mas probable es que ejecutemos un query como el siguiente:

UPDATE tabla1 t1
INNER JOIN tabla2 t2 ON t1.valor = t2.DESC and t1.fecha=t2.fecha
SET t1.valor = t2.CODE
WHERE t1.filtro='correcto';

Sin embargo nos arroja un error como el siguiente:

SQL Error: ORA-00933: SQL command not properly ended 00933. 00000 – “SQL command not properly ended”

Por lo tanto se pueden aplicar las siguientes alternativas:

Si quieres saber más sobre como usar esta cláusula entra en inner join o visita la documentación de oracle

Categories: PL/SQL

1 Comment

Jorge · February 10, 2016 at 5:45 pm

Yo hice algo asi y me funcionó
UPDATE MATERIAL M
SET M.FACTCONVER = ( SELECT F.VOLUMEN_LTS_STD FROM FACTOR_CONVERSION F
WHERE M.CVEPRODUCTO = F.PRODUCTO);

Leave a Reply

Avatar placeholder

Your email address will not be published. Required fields are marked *