Hola,

Pero según mi SQL en realidad el select que devuelva un único registro de
la unión de los dos ficheros que quiero unir debe ir en la cláusula where,
ya que el set valor = 'este es un valor fijo que es 04'.
Os pregunto, como debería ser el where de la sentencia.


Juan Carlos Santos
Dpto. T.I.
Labiana Life Sciences Services  S.L.
Tel. +34 937 369 700
Fax. +34 937 862 558


Este mensaje y toda la documentación adjunta es confidencial y puede ser de
uso restringido. Si Ud. no es uno de los destinatarios señalados, por favor
informe al emisor, y borre y destruya el original y todas las copias del
mensaje. No debe utilizar, copiar, reenviar, distribuir o, en general,
disponer en ninguna forma de la información incluida en el mismo. Si recibe
este e-mail por error por favor notifiquelo inmediatamente por e-mail a la
dirección [EMAIL PROTECTED] Muchas Gracias.

This message, including attachments, is confidential and may be privileged.
If you are not an intended recipient, please notify the sender then delete
and destroy the original message and all copies. You should not use, copy,
forward, disclose or take any action based on this message or any
information herein. If you receive this message in error please notify us
immediately at [EMAIL PROTECTED] . Thank you for your cooperation.




                                                                                
                                                       
                      Fernando Pérez                                            
                                                       
                      <[EMAIL PROTECTED]>      Para:     
[email protected]                                                      
                      Enviado por:             cc:                              
                                                       
                      forum.help400-admin      Asunto:   Re: Sentencia SQL con 
WinSQL                                                  
                      @combios.es                                               
                                                       
                                                                                
                                                       
                                                                                
                                                       
                      02/06/2006 18:01                                          
                                                       
                      Por favor, responda                                       
                                                       
                      a forum.help400                                           
                                                       
                                                                                
                                                       
                                                                                
                                                       




No puedes hacer el update de un join. En su lugar has de hacer :

update tabla1 set campo1_1 = (select campo2_1 from tabla2 where
tabla1.clave = tabla2.clave)
where...

Te has de asegurar de que el select devuelve un solo registro.

Saludos.

Fernando Pérez

Cerámica Saloni. Dpto. Auditoría y Organización


En/na [EMAIL PROTECTED] ha escrit:

Hola a todos,


Estoy intentado crear una sentencia SQL para actualizar unos datos sobre un
fichero que esta en el AS400 (I5) con DB2 y que para saber que registro
debo actualizar lo uno con otro fichero, pero la sentencia SQL que he
montado no me funciona he probado alguna variante pero sigue sin funcionar.


Update  mvxjdtamst.fgledb inner join mvxjdtamst.fgledg
on mvxjdtamst.fgledg.egcono = mvxjdtamst.fgledb.egcono and
mvxjdtamst.fgledg.egdivi = mvxjdtamst.fgledb.egdivi and
mvxjdtamst.fgledg.egjrno = mvxjdtamst.fgledb.egjrno and
mvxjdtamst.fgledg.egjsno = mvxjdtamst.fgledb.egjsno
set mvxjdtamst.fgledb.egbopc = '04'
where
mvxjdtamst.fgledg.egcono = 100 and mvxjdtamst.fgledg.egdivi = 'PHA'
and egacdt > 20060208 and egait1 like '572%'and egbopc = ''


El error pincipal que me indica es Error: SQL0199 - Palabra clave INNER
inesperada. Símbolos válidos: SET. (State:37000, Native Code: FFFFFF39)
pero se supone que el DB2 soporta la palabar inner.

Un saludo y gracias por vuestra ayuda.


Juan Carlos





__________________________________________________
Forum.HELP400 es un servicio más de NEWS/400.
© Publicaciones Help400, S.L. - Todos los derechos reservados
http://www.help400.es_____________________________________________________

Para darte de baja visita la siguente URL:
http://coyote.combios.es/mailman/listinfo/forum.help400




(See attached file: fperez.vcf)


Attachment: fperez.vcf
Description: Binary data

Responder a