Maison >base de données >tutoriel mysql >Comment supprimer les lignes en double dans MySQL à l'aide d'un index unique ?

Comment supprimer les lignes en double dans MySQL à l'aide d'un index unique ?

Patricia Arquette
Patricia Arquetteoriginal
2025-01-24 02:23:12648parcourir

How to Remove Duplicate Rows in MySQL Using a Unique Index?

Supprimer les lignes en double dans MySQL à l'aide d'un index

Pour éliminer les lignes en double en fonction de colonnes spécifiques dans une table MySQL, un index unique peut être créé. Un index est une structure de données qui améliore les performances des requêtes en organisant les données dans un ordre spécifique.

Étape 1 : Créer un index unique

Pour créer un index unique sur le colonnes qui définissent des lignes uniques (par exemple, titre, société et site_id), utilisez l'instruction SQL suivante :

ALTER IGNORE TABLE jobs
ADD UNIQUE INDEX idx_name (site_id, title, company);

Comment ça marche

Le mot-clé IGNORE dans l'instruction SQL demande à MySQL d'ignorer toutes les lignes en double lors de la création de l'index. Cela signifie que seule la première occurrence de chaque combinaison unique de valeurs sera incluse dans l'index.

Résultat

Après la création de l'index, toutes les lignes en double seront automatiquement retiré du tableau. Cela garantit que la table ne contient que des lignes uniques basées sur les colonnes spécifiées.

Remarque : Cette technique n'est plus prise en charge dans les versions MySQL 5.7 et supérieures.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn