Excluir registros duplicados de duas bases de dados

votos
1

Consigo identificar registros duplicados de duas bases de dados diferentes:

select * from 
    taskperformance a,  taskperformance@dm_prod b
where 
    a.activityin = b.activityin
    and a.completiondate = b.completiondate

Como posso excluir registros duplicados de b?

Eu tentei:

delete taskperformance@dm_prod  where exist ( 
select * from 
    taskperformance a,  taskperformance@dm_prod b
where 
    a.activityin = b.activityin
    and a.completiondate = b.completiondate ) 

Mas ele exclui mais do que o que eu preciso.

Publicado 27/08/2009 em 02:17
fonte usuário
Em outras línguas...                            


1 respostas

votos
2

Você não deve voltar a referência bna subconsulta:

delete taskperformance@dm_prod b
where exists (
    select * from taskperformance a
    where a.activityin = b.activityin 
    and a.completiondate = b.completiondate 
)
Respondeu 27/08/2009 em 02:25
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more