Maison >base de données >tutoriel mysql >Comment puis-je rechercher et récupérer des enregistrements en double dans une base de données MySQL ?

Comment puis-je rechercher et récupérer des enregistrements en double dans une base de données MySQL ?

DDD
DDDoriginal
2024-12-15 10:39:14367parcourir

How Can I Find and Retrieve Duplicate Records in a MySQL Database?

Découverte des enregistrements de base de données en double dans MySQL

Dans la gestion des données, l'identification et la gestion des enregistrements en double sont cruciales pour garantir l'intégrité des données. MySQL offre un moyen puissant de récupérer des enregistrements en double dans une base de données à l'aide des clauses GROUP BY et HAVING.

La requête initiale de l'utilisateur démontre la capacité de compter les adresses en double. Cependant, la solution souhaitée vise à récupérer les lignes en double réelles. Pour y parvenir, la requête peut être modifiée pour fonctionner comme une sous-requête :

SELECT firstname, lastname, list.address
FROM list
INNER JOIN (SELECT address
FROM list
GROUP BY address
HAVING COUNT(id) > 1) dup
ON list.address = dup.address;

Dans cette requête révisée, une sous-requête est créée pour récupérer les adresses en double. Par la suite, la requête principale rejoint la table de liste principale avec la sous-requête en utilisant la condition INNER JOIN list.address = dup.address. En conséquence, la requête récupère toutes les lignes de la table de liste associées aux adresses en double, fournissant le résultat souhaité pour chaque ligne en double.

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