Maison > base de données > tutoriel mysql > Comment puis-je sélectionner efficacement des lignes avec des valeurs de colonne non uniques dans une base de données ?

Comment puis-je sélectionner efficacement des lignes avec des valeurs de colonne non uniques dans une base de données ?

Barbara Streisand
Libérer: 2024-12-22 14:53:11
original
447 Les gens l'ont consulté

How Can I Efficiently Select Rows with Non-Unique Column Values in a Database?

Sélection de lignes avec des valeurs de colonne non distinctes

Lorsque vous travaillez avec des données, il peut être nécessaire de récupérer des lignes dans lesquelles des valeurs de colonne spécifiques ne sont pas distinct. Par exemple, dans un tableau contenant des adresses e-mail, il peut être utile d'identifier les adresses e-mail en double dans différents enregistrements client.

La requête fournie utilise les clauses GROUP BY et HAVING pour regrouper les lignes par adresse e-mail et identifier celles qui se produisent. plus d'une fois. Cependant, des problèmes de performances ont été signalés.

Une approche alternative consiste à utiliser une clause IN combinée à une sous-requête. Cette méthode sélectionne les adresses e-mail de la table Clients qui apparaissent plus d'une fois :

SELECT [EmailAddress], [CustomerName] 
FROM [Customers] 
WHERE [EmailAddress] IN
  (SELECT [EmailAddress] 
   FROM [Customers] 
   GROUP BY [EmailAddress] 
   HAVING COUNT(*) > 1)
Copier après la connexion

Les performances de cette requête sont généralement plus rapides que l'utilisation des clauses GROUP BY et HAVING et devraient effectivement renvoyer des lignes avec des adresses e-mail 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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal