Maison >base de données >tutoriel mysql >Comment puis-je combiner les données de plusieurs tables à l'aide de l'opérateur UNION de SQL ?

Comment puis-je combiner les données de plusieurs tables à l'aide de l'opérateur UNION de SQL ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-29 09:43:15626parcourir

How Can I Combine Data from Multiple Tables Using SQL's UNION Operator?

Combiner des tableaux pour une sortie consolidée

Lorsque vous travaillez avec plusieurs tableaux de données, les combiner pour produire un résultat unique et cohérent peut être une pratique courante tâche. Pour y parvenir, comprendre la structure des données et les opérations de requête devient crucial.

Imaginez avoir deux tables : KnownHours et UnknownHours. L'objectif est de fusionner ces tableaux, sans tenir compte de la colonne Mois, pour obtenir une vue complète des heures associées à différents numéros de facturation et identifiants de catégorie.

Pour ce faire, l'opérateur UNION constitue un outil puissant. Cela nous permet de combiner les résultats de plusieurs requêtes, essentiellement en les ajoutant ensemble. La syntaxe de UNION en SQL est la suivante :

SELECT ...
FROM table1
UNION
SELECT ...
FROM table2

Dans notre cas, nous devons regrouper les heures pour chaque combinaison ChargeNum/Category. Nous pouvons modifier notre requête UNION comme ci-dessous :

SELECT ChargeNum, CategoryID, SUM(Hours)
FROM KnownHours
GROUP BY ChargeNum, CategoryID
UNION ALL
SELECT ChargeNum, 'Unknown' AS CategoryID, SUM(Hours)
FROM UnknownHours
GROUP BY ChargeNum

Le mot-clé UNION ALL diffère légèrement de UNION en ce sens qu'il ne tente pas de supprimer les lignes en double. Cela garantit que toutes les lignes des deux requêtes sont incluses dans le résultat final.

En utilisant l'opération UNION ALL, nous pouvons combiner efficacement les résultats de KnownHours et UnknownHours, créant ainsi un tableau complet avec le résultat souhaité :

ChargeNum    CategoryID     Hours
111111       1              90
111111       2              50
111111       Unknown        110.5
222222       1              40
222222       Unknown        25.5

Comprendre l'opérateur UNION vous permet de fusionner des données provenant de plusieurs sources, fournissant ainsi un moyen puissant de construire des sorties personnalisées et complètes pour votre analyse de données. besoins.

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