Maison > base de données > tutoriel mysql > Maîtriser SQL DISTINCT : supprimer les doublons en toute simplicité

Maîtriser SQL DISTINCT : supprimer les doublons en toute simplicité

Barbara Streisand
Libérer: 2024-12-27 06:52:10
original
600 Les gens l'ont consulté

Mastering SQL DISTINCT: Removing Duplicates Made Simple

Quel est le but du mot-clé DISTINCT en SQL ?

Le mot-clé DISTINCT en SQL est utilisé pour supprimer les lignes en double de l'ensemble de résultats d'une requête. Cela garantit que la requête ne renvoie que des enregistrements uniques pour les colonnes spécifiées.


Comment fonctionne DISTINCT ?

Lorsqu'une requête SELECT récupère des données, il peut y avoir des lignes en double dans la sortie. En ajoutant le mot-clé DISTINCT, SQL filtre ces doublons, ne conservant qu'une seule occurrence de chaque combinaison unique de valeurs dans les colonnes spécifiées.


Syntaxe :

SELECT DISTINCT column1, column2, ...
FROM table_name;
Copier après la connexion

Exemples :

1. Supprimer les doublons

Considérez une table Employés :

EmployeeID Department
1 HR
2 IT
3 HR
4 Sales

Requête :

SELECT DISTINCT Department
FROM Employees;
Copier après la connexion

Résultat :

Department
HR
IT
Sales

Ici, les doublons dans la colonne Département sont supprimés.


2. Sélection de combinaisons uniques

Considérons un autre tableau Commandes :

OrderID CustomerID ProductID
101 1 A
102 1 B
103 1 A
104 2 C

Requête :

SELECT DISTINCT CustomerID, ProductID
FROM Orders;
Copier après la connexion

Résultat :

CustomerID ProductID
1 A
1 B
2 C

Ici, DISTINCT filtre les lignes en double en fonction de la combinaison de CustomerID et ProductID.


Quand utiliser DISTINCT

  1. Pour trouver des valeurs uniques :

    Lorsque vous souhaitez connaître toutes les valeurs uniques d'une colonne ou d'une combinaison de colonnes.

    Exemple : Répertorier toutes les catégories de produits distinctes dans un inventaire.

  2. Pour éliminer la redondance :

    Lorsque les lignes en double dans l'ensemble de résultats ne sont pas nécessaires à l'analyse ou au reporting.

    Exemple : Récupération de noms de service uniques à partir d'une base de données d'employés.

  3. Pour le nettoyage des données :

    Aide à préparer des ensembles de données propres en supprimant les doublons.


Limitations de DISTINCT

  1. Impact sur les performances :

    L'utilisation de DISTINCT peut ralentir les requêtes, en particulier sur les grands ensembles de données, car SQL doit analyser et comparer les lignes pour filtrer les doublons.

  2. Pas pour la déduplication conditionnelle :

    Si vous souhaitez une déduplication conditionnelle (par exemple, conserver la dernière ligne pour chaque valeur unique), vous avez besoin d'autres techniques telles que ROW_NUMBER().


Conseils d'utilisation de DISTINCT

  1. Utilisez toujours DISTINCT uniquement lorsque cela est nécessaire, car cela peut ajouter une surcharge à l'exécution des requêtes.
  2. Pour un filtrage complexe, envisagez des alternatives telles que des agrégations (GROUP BY) ou des fonctions analytiques.

Conclusion

Le mot-clé DISTINCT est un outil simple mais puissant pour éliminer les lignes en double dans les résultats des requêtes SQL. Il garantit que votre sortie ne contient que des valeurs uniques, ce qui la rend idéale pour les tâches de reporting et d'analyse de données. Cependant, utilisez-le judicieusement pour équilibrer performances et précision.

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:dev.to
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