Programação  
 
Conhecimento computador >> Programação >> Programação PHP /MySQL >> 
Como se livrar de duplicatas em MySQL
Se sua tabela MySQL contém centenas ou milhares de registros , você não quer olhar manualmente através de cada um para tentar identificar registros duplicados . O MySQL não tem uma única consulta que você pode usar para remover entradas duplicadas em uma tabela, mas você pode usar uma combinação de consultas e executá-los em conjunto para eliminar seus duplos. Mesmo que a sua tabela usa uma chave primária para identificar unicamente os registros , você pode remover duplicatas por não selecionar o campo de chave primária em suas consultas . Instruções
1

Faça login na sua base de dados MySQL e acessar a ferramenta de consulta
2

Digite a seguinte consulta: .

CRIAR TEMPORÁRIA temperatura TABLE SELECT DISTINCT col1, col2, col3 do grupo table_name BY col1, col2, col3 HAVING COUNT (*) > 1;

isso cria uma tabela temporária que verifica a tabela fornecida pela " table_name " e quando encontra um registro duplicado , ele insere que duplicar na tabela temporária , mas apenas uma vez. Por exemplo, se " table_name " tem três entradas, " Jim", " Bob " e " Bob ", o " temp" mesa terá apenas um disco, " Bob ". Se atos " col1 " como um campo de chave primária na tabela, não incluem " col1 " na consulta e simplesmente selecione as duas outras colunas
3

Digite a seguinte consulta: .

DELETE FROM table_name WHERE ( col1, col2, col3 ) IN (SELECT col1, col2, col3 dE temp) ;

cheques Esta consulta cada registro na " table_name " e exclui todos os registros que têm duplicatas , incluindo o original . Por exemplo, se a tabela possui três entradas , " Jim ", "Bob" e " Bob ", a consulta irá excluir os "" registros , deixando apenas " Bob Jim " em " table_name ". Mais uma vez , remova as referências a " col1 " na consulta se " col1 " é o campo de chave primária
4

Digite a seguinte consulta: .

INSERT INTO nome_tabela ( col1, col2, col3 ) SELECT col1, col2, col3 dE temp; " . table_name "

Esta consulta essencialmente copia todos os registros da tabela temporária e insere -los de volta Se neste momento " table_name " só tem " Jim " e " temp" só tem " Bob ", após a consulta, " table_name " terá " Jim " e registros de "Bob" , enquanto a tabela temporária é excluído . Lembre-se de remover referências " col1 " se é uma chave primária.
5

Executar todas as consultas .

Anterior :

Próximo : No
  Os artigos relacionados
·MySQL Integer : Assinado Vs . Unsigned 
·Como inserir uma matriz em MySQL em PHP 
·Como recuperar e exibir registros de MySQL usando PHP 
·PHP 'Se' Tutorial Declaração 
·Pode Dreamweaver Editar PHP 
·Tutorial PHP para inicializar matrizes 
·Como transferir os resultados para um cliente em PHP 
·Como desativar consulta no MySQL Cache 
·Como usar a herança em PHP 
·Como Desativar Restrições em MySQL 
  Artigos em destaque
·Como alterar a cor de um celular JTable 
·Como substituir o DataGrid Editar método 
·Como aprender UML 2.0 Online 
·Como inserir em um banco de dados com um menu drop -dow…
·PHP vs. Escalabilidade Java 
·Como calcular o contraste Cor 
·Como usar LINQ em WPF 
·O que é persistência de dados 
·Como formatar Decimals Usando AWK 
·XML Ferramenta Dica Tutorial 
Cop e direita © Conhecimento computador http://ptcomputador.com Todos os Direitos Reservados