Ver Mensaje Individual
  #2  
Antiguo 28-03-2007
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Reputación: 23
poliburro Va por buen camino
Esto quedaría de perlas en un Sp

Esto actualizará los existentes

Código SQL [-]

      Update Destino
           Set Destino.Campo = Origen.Valor
         From Destino 
   Inner Join (Select ClaveArticu, ValorCampo
                    From Origen 
                  Where Fecha >= Inicio And
                           Fecha <= Fin
                  ) As Origen
             On Destino.ClaveArticu = Origen.ClaveArticu


Esto Insertará los nuevos (Mi favorita por cuestiones de rendimiento)

Código SQL [-]
  Insert 
     Into Destino
           (Campos)
           Select Campos
             From (Select ClaveArticu, Campos
                        From Origen 
                      Where Fecha >= Inicio And
                                Fecha <= Fin
                     ) As Origen
        Left Join  Destino
                On Origen.ClaveArticu = Destino.ClaveArticu 
     Where Not Destino.AlgunCampo is null

Esta otra aplica, pero es más costosa en cuestión de rendimiento

Código SQL [-]
  Insert 
     Into Destino
             (Campos)
   Select Campos
    From Origen 
   Where Fecha >= Inicio And
                Fecha <= Fin And
                 CveArticulo Not In (Select CveArticulo From Destino)


Suerte
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita