Maison > base de données > tutoriel mysql > Comment sélectionner des combinaisons de valeurs distinctes à partir de plusieurs colonnes dans MySQL ?

Comment sélectionner des combinaisons de valeurs distinctes à partir de plusieurs colonnes dans MySQL ?

Mary-Kate Olsen
Libérer: 2024-11-02 16:18:02
original
530 Les gens l'ont consulté

How to Select Distinct Value Combinations from Multiple Columns in MySQL?

Sélection de valeurs distinctes à partir de plusieurs colonnes dans MySQL

Lorsque vous travaillez avec des bases de données, il est souvent nécessaire de récupérer des combinaisons uniques de valeurs à partir de plusieurs colonnes. Cependant, l'utilisation du mot-clé DISTINCT ne donne pas toujours les résultats souhaités. Cet article explore une approche alternative pour sélectionner des valeurs distinctes à partir de deux colonnes dans une base de données MySQL.

Considérez la table suivante nommée "foo_bar" :

foo bar
a c
c f
d a
c a
f c
a c
d a
a c
c a
f c

Interrogation de cette table avec l'instruction SQL suivante :

<code class="sql">SELECT DISTINCT foo, bar FROM foo_bar;</code>
Copier après la connexion

produit le résultat suivant :

foo bar
a c
c f
d a
c a
f c

Bien que cette requête garantisse qu'une seule instance de chaque combinaison de valeurs unique est renvoyée, elle n'élimine pas les redondances où les valeurs sont intervertis dans les deux colonnes. Par exemple, « a c » et « c a » sont des combinaisons distinctes, mais elles font référence aux mêmes données.

Pour résoudre ce problème, nous pouvons utiliser la clause GROUP BY à la place :

<code class="sql">SELECT foo, bar FROM foo_bar GROUP BY foo, bar;</code>
Copier après la connexion

Cette requête renvoie le résultat suivant :

foo bar
a c
c f
d a

Comme vous pouvez le voir, la clause GROUP BY combine toutes les lignes en double en une seule ligne, éliminant efficacement les répétitions et fournissant des combinaisons de valeurs vraiment distinctes des deux colonnes foo et bar.

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