Fórum Deletar registros duplicados com Select #328794
06/09/2006
0
Gostaria de saber como deleto registros duplicados numa tabela, por exemplo: Tenho num cadastro de clientes tres registros duplicados, onde o nome do cliente seja: ANTONIO DA SILVA CARVALHO, pois bem, gostaria de deletar dois registros com esse mesmo nome deixando apenas um utilizando uma select.
Grato,
Alcantarus.
Alcantarus
Curtir tópico
+ 0Posts
06/09/2006
Aasn
Delete from TABELA1 A Where (Select count(B.NOME) From TABELA1 B Where B.NOME = A.NOME) > 1
[]´s
AASN
Gostei + 0
06/09/2006
Motta
Tem de fazer um programa para isto.
Gostei + 0
06/09/2006
Aasn
Discordo do Motta, o select acima faz uma varredura na tabela e deleta todos os registros com nomes duplicados (deixando apenas um de cada).
Pode testar e ver o resultado!
[]´s
AASN
Gostei + 0
06/09/2006
Motta
Gostei + 0
06/09/2006
Motta
Gostei + 0
06/09/2006
Alcantarus
Delete from Rec A Where (Select count(B.Numnot) From Rec B Where B.Numnot = A.Numnot) > 1 Delete from Rec A Where Numnot (Select count(B.Numnot) From Rec B Where B.Numnot = A.Numnot) > 1 Delete from Rec A Where Numnot in (Select count(B.Numnot) From Rec B Where B.Numnot = A.Numnot > 1 ) Delete from Rec A Where Numnot in (Select count(B.Numnot) From Rec B Where B.Numnot = A.Numnot) > 1
O que eu gostaria, é que numa Tabela de Recebimentos, estao duplicados os Numeros da Notas, Parcelas, SubParcelas, Valores, etc... duplicaram todos os registros, entao, gostaria de exclui-los, deixando SOMENTE um registro no banco.
Grato de suas atencoes...
Alcantarus.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)