Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Buenas tardes,
Tengo el siguiente caso, a ver si lo explico correctamente :
TABLA1 - LECTURAS :
ID | fecha |
a1234 | 12/05/2019 |
a1235 | 13/05/2019 |
a1236 | 14/05/2019 |
a1237 | 15/05/2019 |
TABLA2 - PROCESO :
ID | FECHA | DATO EXTRA |
a1234 | 12/05/2019 | 21321A123 |
a1235 | 13/05/2019 | 21321A124 |
a1236 | 14/05/2019 | 21321A125 |
a1237 | 15/05/2019 | 21321A126 |
a1238 | 16/05/2019 | 21321A127 |
a1239 | 17/05/2019 | 21321A128 |
a1240 | 18/05/2019 | 21321A129 |
a1241 | 19/05/2019 | 21321A130 |
a1242 | 20/05/2019 | 21321A131 |
lo que necesito es eliminar los resultados de la tabla1 en la tabla2 :
ID | FECHA |
a1238 | 16/05/2019 |
a1239 | 17/05/2019 |
a1240 | 18/05/2019 |
a1241 | 19/05/2019 |
a1242 | 20/05/2019 |
Hola RPerezLaso.
Para borrar las filas de una tabla que existen en otra puedes usar la función KEEP. Seguiras manteniendo ambas tablas. Depués de la depuración, si te sobra alguna puedes borrarla con DROP TABLE.
en tu caso bastará con hacer:
LEFT KEEP (LECTURAS)
LOAD * RESIDENT PROCESO;
Hola Albert_guito
me podrias explicar el uso del where not exist()
ya que si lo uso con residents, no me funciona.
un saludo.
Hola,
Lamento el retraso disculpa he estado de viaje.
La idea es cargar la tabla 1 y usar su llave primaria para excluirla en la tabla 2 como bien has puesto tu codigo.
Es interesante forzar la no concatenacion de tablas para evitar problemas (se suele hacer con tablas de la misma estructura). Esto suele pasar con tablas residentes en las que se limitan los campos.
Si te da problemas una carga residente ponme el codigo y le echo un vistazo.
Un saludo
Buenas @albert_guito,
No te preocupes, Al final como lo he solucionado ha sido cambiando el nombre de la cable principal en la residente ej:
tabla1:
LOAD
ID,
DATO
resident xxx
tabla2:
LOAD
ID as IDS,
DATO
resident xxx
where not exist (ids,id)