ja, y eso que no soy un guru... aunque la verdad si es una opcion a implementar constantemente seria mejor como dice Fernando Perez desarrollar un programita que va a ser mucho mas optimo...
Saludos, ----- Original Message ----- From: "Fernando Mart�nez" <[EMAIL PROTECTED]> To: <[email protected]> Sent: Thursday, January 13, 2005 2:12 PM Subject: Re: Update de SQL Gracias Dario, ha funcionado correctamente. Dario Gabriel Ivan Heinze escribi�: >update tabla1 a set (a.columna1, a.columna2, ..., a.columnaN) = (select >b.columna1, b.columna2, ..., b.columnaN from tabla2 B where a.clave = >b.clave) where exists(select 1 from tabla2 b where a.clave = b.clave and >(a.columna1 �= b.columna1 or a.columna2 �= b.columna2 or ... or a.columnaN >�= b.columnaN)) > >mmm creo que algo asi andaria bien... pruebalo pues puedo haberle errado en >algun lado... > > >----- Original Message ----- >From: "Fernando Mart�nez" <[EMAIL PROTECTED]> >To: "Foro AS/400" <[email protected]> >Sent: Thursday, January 13, 2005 12:01 PM >Subject: Update de SQL > > >Hola a todos > > Esto va para los Gurus de SQL. Necesito hacer una sentencia SQL >que me compare las columnas de dos tablas y que actualize solo las filas > >que tengan alguna diferencia. > > Yo estoy pensando en algo as�: > > Update into Tabla1 A > Set (Columna1 = (Select Columna1 From Tabla2 Where Clave1 = >A.Clave1), > Columna2 = (Select Columna2 From Tabla2 Where Clave1 >= A.Clave1), > . > . > . > Columnan = (Select Columnan From Tabla2 Where Clave1 >= A.Clave1)) > Where ((A.Clave1 In (Select Clave1 From Tabla2)) > And ((Not (Columna1 = (Select Columna1 From >Tabla2 Where Clave1 = A.Clave1))) > Or (Not (Columna2 = (Select Columna2 From >Tabla2 Where Clave1 = A.Clave1))) > Or (Not (Columna3 = (Select Columna3 From >Tabla2 Where Clave1 = A.Clave1))) > . > . > . > Or (Not (Columnan = (Select Columnan From >Tabla2 Where Clave1 = A.Clave1)))) > > Es demasiado rebuscado ya se, pero me ahorra cantidad de c�digo >de programaci�n y si funciona bien con grandes cantidades de datos es >incluso mas rapido. Si alguien le ve pegas o cree que va a ser excesivo >se admiten opiniones. > > Gracias anticipadas > > Fernando Martinez > > > >_____________________________________________________ >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, env�a el mensaje resultante de pulsar >mailto:[EMAIL PROTECTED] > > >_____________________________________________________ >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, env�a el mensaje resultante de pulsar >mailto:[EMAIL PROTECTED] > > > > -- Fernando Martinez [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> Adriano VI, 20 - 3� 01008 Vitoria-Gasteiz Tfno: 945 20 06 55 Fax: 945 20 06 91 _____________________________________________________ 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, env�a el mensaje resultante de pulsar mailto:[EMAIL PROTECTED]
