Hola Estela,

Para ejecutar este tipo de sentencias update de una tabla en función de otra 
debes utilizar la estructura MERGE, en el ejemplo que pones tú sería de la 
siguiente manera:

MERGE INTO PROJECT AS P
USING (SELECT DEPTNO, LOCATION FROM DEPARTMENT) AS D
ON P.DEPTNO = D.DEPTNO
WHEN MATCHED THEN UPDATE SET P.LOCATION = D.LOCATION;

Hasta dónde yo se un UPDATE no acepta el FROM. Otra cosa que no tengo clara es 
a partir de que reléase está disponible el MERGE.

En este artículo te explica bien el MERGE:

https://medium.com/@esteeeban10/merge-en-db2-as400-3ab986c36bef

Un saludo
Sergio Martínez
Estibarna, CPE

De: Forum.help400 <[email protected]> En nombre de 
estela retes
Enviado el: lunes, 8 de marzo de 2021 16:16
Para: forum.help400 <[email protected]>
Asunto: Norma SQL DB2 en V7R4

Buenas a todos,

Disculpad por lo básico de la pregunta.

Estamos intentando ejecutar unas sentencias SQL de tipo UPDATE desde el 
Rational (desde STRSQL nos ocurre lo mismo), similares a ésta de un manual de 
IBM:

UPDATE PROJECT P
      SET P.LOCATION = D.LOCATION
      FROM DEPARTMENT D
      WHERE P.DEPTNO = D.DEPTNO;

Estamos obteniendo el error:
[SQL0199] Palabra clave FROM inesperada. Símbolos válidos: USE SKIP WAIT WITH 
FETCH LIMIT ORDER WHERE OFFSET.

Entendemos que no nos está permitiendo poner una cláusula FROM en una UPDATE y 
nos gustaría saber porqué nos está rechazando esta sintaxis y en qué "norma" de 
SQL debemos basarnos a la hora de construir dichas sentencias.

Gracias a todos y un saludo.

--
Estela
Este mensaje contiene información confidencial dirigida al destinatario del 
mismo. Las opiniones expresadas pertenecen al autor y no necesariamente a 
ESTIBARNA. Si Ud. recibe este mensaje por error, se ruega informe 
inmediatamente al remitente del mismo. Queda prohibido el uso, divulgación, 
copia o distribución a terceros de la información incluida en este mensaje.
____________________________________________________
�nete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 � Publicaciones Help400, S.L.

Reply via email to