Registro Duplicado . . . .
Boa Noite senhores do forum, gostaria de tirar uma dúvida, tenho uma tabela no meu trabalho aonde possuo vários registros duplicados, nenhum deles com chave duplicadas somente com nomes duplicdos.
O que estou precisando é fazer uma consulta que a essa tabela e excluir os registros duplicados deixando somente um registro somente.
Ex: O Registro ´ RAFAEL CABRAL´ possui 67 aparições eu preciso deixar somente 1 registro com este nome o que significa dizer que tenho que excluir 66 registros.
Como faço isso???
Atc.
Rafael Cabral
O que estou precisando é fazer uma consulta que a essa tabela e excluir os registros duplicados deixando somente um registro somente.
Ex: O Registro ´ RAFAEL CABRAL´ possui 67 aparições eu preciso deixar somente 1 registro com este nome o que significa dizer que tenho que excluir 66 registros.
Como faço isso???
Atc.
Rafael Cabral
Rscrj
Curtidas 0
Respostas
Biohazard
29/03/2005
Use o CPF da pessoa para identifica-lo, colocando o CPF como chave primária. Agora, nome é nome, só se você colocar Rafael Cabral 1, 2, 3... Não tem como você ter 67 nomes iguais e ter um só registro com esse nome. Identificar pelo CPF já é uma, não é? Espero ter ajudado.
GOSTEI 0
Faelcavalcanti
29/03/2005
Caso estejas trabalhando com SGDB´s poderias utilizar a função SUBSTRING do firebird, ou outro banco específico. Caso dê trela, tenta fazer uma consulta utilizando o [b:801e754117]Like[/b:801e754117] ou o [b:801e754117]Starting With[/b:801e754117], ou pelo menos um ocorrência de uma determinada [b:801e754117]String[/b:801e754117]. Agora se a coisa ficar feia, só as Procedures implementadas no banco te darão uma maior precisão.
GOSTEI 0
Rômulo Barros
29/03/2005
Vamos supor a seguinte tabela:
Agora, basta executar:
_____________________________________________
[b:bf521c2554][color=blue:bf521c2554]Utilize a Ferramenta de Pesquisa do Fórum[/color:bf521c2554][/b:bf521c2554]
Pesquisar pelos termos
_____________________________________________
[b:bf521c2554]Veja como[url=http://forum.clubedelphi.net/viewtopic.php?t=16976] OBTER RESPOSTAR RÁPIDAS[/url][/b:bf521c2554]
[b:bf521c2554]Veja as novas [url=http://forum.clubedelphi.net/viewtopic.php?t=59817]MUDANÇAS NA ESTRUTURA[/url] do site[/b:bf521c2554]
[b:bf521c2554]Leia sempre as [url=http://forum.clubedelphi.net/viewtopic.php?t=6689]REGRAS DE CONDUTA[/url][/b:bf521c2554]
CREATE TABLE "CLIENTES"
(
"CODIGO"INTEGER NOT NULL,
"NOME"VARCHAR(50),
PRIMARY KEY ("CODIGO")
);Agora, basta executar:
DELETE FROM CLIENTES C WHERE C.CODIGO NOT IN (SELECT MIN(C2.CODIGO) FROM CLIENTES C2 GROUP BY C2.CODIGO)
_____________________________________________
[b:bf521c2554][color=blue:bf521c2554]Utilize a Ferramenta de Pesquisa do Fórum[/color:bf521c2554][/b:bf521c2554]
Pesquisar pelos termos
_____________________________________________
[b:bf521c2554]Veja como[url=http://forum.clubedelphi.net/viewtopic.php?t=16976] OBTER RESPOSTAR RÁPIDAS[/url][/b:bf521c2554]
[b:bf521c2554]Veja as novas [url=http://forum.clubedelphi.net/viewtopic.php?t=59817]MUDANÇAS NA ESTRUTURA[/url] do site[/b:bf521c2554]
[b:bf521c2554]Leia sempre as [url=http://forum.clubedelphi.net/viewtopic.php?t=6689]REGRAS DE CONDUTA[/url][/b:bf521c2554]
GOSTEI 0