Eliminar Registros Iguais
#1
Posted 17/09/2007, 15:26
Um cliente me passou uma tabela para atualizar os cadastros dos seus clientes. Notei que existem muitos registros duplicados, existe algum comando que eu possa fazer para ele eliminar um dos registros caso tenha mais de um igual?
ex: procuro por rogerio da silva e ele encontra 5
tem como eliminar quatro e deixar apenas um?
#2
Posted 17/09/2007, 15:43
Diga como está a estrutura da tabela
Falopa!
#3
Posted 17/09/2007, 16:09
CREATE TABLE cadastro_cliente (
id int(10) unsigned NOT NULL auto_increment,
data_cadastro_cliente datetime DEFAULT '0000-00-00 00:00:00' ,
nome varchar(100) ,
telefone varchar(100) ,
celular varchar(100) ,
comercial varchar(100) ,
contato varchar(100) ,
rua varchar(100) ,
cep varchar(100) ,
bairro varchar(100) ,
cidade varchar(100) ,
estado varchar(100) ,
email varchar(100) ,
indicou varchar(100) ,
cpf_cnpj varchar(100) ,
rg varchar(100) ,
uf char(2) ,
data_nasc varchar(100) ,
login varchar(50) ,
PRIMARY KEY (id)
);
Claro a comparação precisa ser pelo cpf_cnpj mesmo...
#4
Posted 17/09/2007, 16:16
Bom... eu na minha humilde ignorância pergunto:
Já que (parece) cpf_cnpj é um valor único, não poderia ser a sua PK (mesmo eu achando que não é a prática mais adequada)?
E outra... como você está fazendo a importação dos dados?
Eu faria isso que você quer na importação ao invés de importar tudo e depois quebrar a cabeça excluindo as duplicidades...
[] Rafael
#5
Posted 17/09/2007, 16:36
Antes de exportar os dados faça a seguinte consulta
SELECT DISTINCT( cpf_cnpj ), nome, telefone FROM cadastroIsso trará a você os registros filtrando as duplicidades do campo cpf_cnpj, sendo assim, será retornado apelas um registro de cada mesmo havendo duplicidades.
Falopa!
Edição feita por: hostdesigner, 17/09/2007, 16:36.
#6
Posted 19/09/2007, 15:13
O interessante seria você fazer o seguinte... Estou imaginando que a tabela que você tem é uma tabela de banco de dados...
Antes de exportar os dados faça a seguinte consultaSELECT DISTINCT( cpf_cnpj ), nome, telefone FROM cadastroIsso trará a você os registros filtrando as duplicidades do campo cpf_cnpj, sendo assim, será retornado apelas um registro de cada mesmo havendo duplicidades.
Falopa!
Não fará distinção apenas do campo cpf_cnpj, a aceitação desta sintaxe causa uma ilusão. Pois na verdade, a distinção é feita dos três campos citados no SELECT. Para fazer de um só campo, você teria que usar
GROUP BY
.Segue uns testes:
mysql> insert into CADASTRO values (1, 2, 3), (1, 3, 4); Query OK, 2 rows affected (0.23 sec) Records: 2 Duplicates: 0 Warnings: 0 mysql> select distinct (a), b, c from CADASTRO; +------+------+------+ | a | b | c | +------+------+------+ | 1 | 2 | 3 | | 1 | 3 | 4 | +------+------+------+ 2 rows in set (0.24 sec) mysql> select distinct a, b, c from CADASTRO; +------+------+------+ | a | b | c | +------+------+------+ | 1 | 2 | 3 | | 1 | 3 | 4 | +------+------+------+ 2 rows in set (0.24 sec) mysql> select distinct a, (b), c from CADASTRO; +------+------+------+ | a | b | c | +------+------+------+ | 1 | 2 | 3 | | 1 | 3 | 4 | +------+------+------+ 2 rows in set (0.31 sec)
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29
#7
Posted 19/09/2007, 15:22
Agora que você falou... realmente, a minha sugestão não resolve o problema, já que ao informar três campos o DISTINCT irá comparar se os três campos possuem valores iguais. Que vacilo o meu!
SELECT cpf_cnpj, nome, telefone FROM cadastro GROUP BY cnpj_cpf ORDER BY nome ASCO correto seria assim, acrescentei também a ordenação dos registros pelo nome.
Falopa!
#8
Posted 26/09/2017, 07:03
Real Levaquin Discount Low Price Online cialis price Orlistat Online
New Healthy Man Bbb Rating buy cialis Cialis E Donne
#9
Posted 10/10/2017, 19:39
Viagra Combo Packs viagra Discovering Amoxil Cod Provera Ralovera Best Website In Internet Cephalexin Sensitivities
Priligy Valor Where Can I Buy Mirtazapine Cheap buy viagra online Levitra Generic Cheap
#10
Posted 28/10/2017, 08:32
Cheapest Nonprescription Bactrim Viagra Pharmacy Withoug Prescription Propecia Dose Testicular Pain viagra Levitra Preis 10 Mg
Nombres Women Argentina Levitra Da 20 Mg Order Cipla Drugs buy viagra Walgreens Cialis Prices Finasteride 1mg Generic Propecia Levitra Food
0 user(s) are reading this topic
0 membro(s), 0 visitante(s) e 0 membros anônimo(s)