Ver Mensaje Individual
  #15 (permalink)  
Antiguo 30/10/2014, 16:43
Avatar de Libras
Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Carga de archivo TXT y Actualización

entonces tu llave primaria es una llave compuesta, no nada mas un campo, lo que podrias hacer es un merge a la "old school" que es esto, hacer tus queries para identificar los registros nuevos y despues insertar estos, y asi mismo hacer tus queries para identificar los registros viejos y actualizarlos es algo como

Código SQL:
Ver original
  1. INSERT INTO production
  2. SELECT * FROM staging AS t1
  3. LEFT JOIN production AS t2 ON (t1.id=t2.id)
  4. WHERE t2.id IS NULL
  5.  
  6. UPDATE production
  7. SET old_value=new_value
  8. FROM
  9. (
  10. SELECT * FROM staging AS t1
  11. LEFT JOIN production AS t2 ON (t1.id=t2.id)
  12. WHERE t2.id IS NOT NULL
  13. ) AS t1 WHERE t1.id=production.id

saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Última edición por Libras; 30/10/2014 a las 18:08