Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Problema con not exists

Estas en el tema de Problema con not exists en el foro de SQL Server en Foros del Web. Hola Necesito restar 2 tablas, eliminar en una tabla las columnas que se encuentran en otra tabla. La llave primaria son 5 campos y se ...
  #1 (permalink)  
Antiguo 15/12/2005, 10:17
 
Fecha de Ingreso: septiembre-2003
Ubicación: colombia
Mensajes: 374
Antigüedad: 20 años, 8 meses
Puntos: 0
Problema con not exists

Hola

Necesito restar 2 tablas, eliminar en una tabla las columnas que se encuentran en otra tabla.

La llave primaria son 5 campos y se que se puede hacer con not exists pero no he podido.

como lo hago??
gracias
__________________
J-.-`.::
  #2 (permalink)  
Antiguo 16/12/2005, 17:37
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Haciendo de los 5 campos uno solo:

DELETE tabla
WHERE llave1+llave2+llave3+llave4+llave5 NOT IN (SELECT llave1+llave2+llave3+llave4+llave5 FROM otratabla)

Aunque lo mejor (entendimiento y rendimiento) es usar un outer join:

DELETE t1
FROM tabla1 t1
LEFT OUTER JOIN tabla2 t2
ON t1.llave1 = t2.llave1
AND t1.llave2 = t2.llave2
....
WHERE t2.llave1 IS NULL
AND t2.llave2 IS NULL
AND t2.llave3 IS NULL
....
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:39.