Maison > Article > base de données > Comment utiliser la fonction FULL OUTER JOIN dans MySQL pour obtenir l'union de deux tables
Comment utiliser la fonction FULL OUTER JOIN dans MySQL pour obtenir l'union de deux tables
Dans MySQL, la fonction FULL OUTER JOIN est une opération de jointure puissante qui combine des jointures internes et des jointures externes. Il peut être utilisé pour obtenir l'union de deux tables, c'est-à-dire combiner toutes les données des deux tables en un seul ensemble de résultats. Cet article présentera l'utilisation de la fonction FULL OUTER JOIN et fournira des exemples de code pour aider les lecteurs à mieux comprendre. La syntaxe de la fonction
FULL OUTER JOIN est la suivante :
SELECT * FROM table1 FULL OUTER JOIN table2 ON table1.column = table2.column;
Dans cette syntaxe, table1 et table2 sont les deux tables à connecter, la colonne est la condition de connexion et * signifie sélectionner toutes les colonnes.
Supposons que nous ayons deux tables : la table A et la table B. Leur structure et leurs données sont les suivantes :
Table A :
+----+--------+ | id | name | +----+--------+ | 1 | Tom | | 2 | Jerry | | 3 | Alice | +----+--------+
Table B :
+----+--------+ | id | name | +----+--------+ | 1 | Peter | | 2 | Jerry | | 4 | Bob | +----+--------+
Maintenant, nous voulons obtenir l'union de la table A et de la table B.
L'exemple de code utilisant la fonction FULL OUTER JOIN est le suivant :
SELECT * FROM tableA FULL OUTER JOIN tableB ON tableA.id = tableB.id;
Après avoir exécuté le code ci-dessus, nous obtiendrons les résultats suivants :
+------+---------+---------+ | id | name | name | +------+---------+---------+ | 1 | Tom | Peter | | 2 | Jerry | Jerry | | 3 | Alice | NULL | | NULL | NULL | Bob | +------+---------+---------+
Comme le montrent les résultats ci-dessus, la fonction FULL OUTER JOIN combine tous les valeurs des données du tableau A et du tableau B sont incluses. Il fusionne les lignes avec la même valeur dans les deux tables en fonction de la condition de jointure et remplit la colonne correspondante avec NULL s'il n'y a pas de ligne correspondante dans une table.
Dans l'exemple ci-dessus, les lignes avec les identifiants 1 et 2 sont présentes dans les deux tableaux, elles sont donc fusionnées en une seule ligne. La ligne avec l'identifiant 3 n'existe que dans le tableau A et la ligne avec l'identifiant 4 n'existe que dans le tableau B, elles sont donc affichées comme une ligne distincte.
En plus de SELECT *, nous pouvons également éventuellement spécifier les colonnes requises comme suit :
SELECT tableA.id, tableA.name, tableB.name FROM tableA FULL OUTER JOIN tableB ON tableA.id = tableB.id;
Après avoir exécuté le code ci-dessus, nous obtiendrons les résultats suivants :
+------+---------+---------+ | id | name | name | +------+---------+---------+ | 1 | Tom | Peter | | 2 | Jerry | Jerry | | 3 | Alice | NULL | | NULL | NULL | Bob | +------+---------+---------+
À partir de l'exemple ci-dessus, nous pouvons voir comment utiliser le FULL Fonction OUTER JOIN pour obtenir l'union de deux tables. Cela peut nous aider à fusionner les données des deux tableaux, ce qui rend le traitement des données plus pratique.
Pour résumer, la fonction FULL OUTER JOIN est une puissante opération de jointure dans MySQL permettant d'obtenir l'union de deux tables. Il peut fusionner toutes les données de deux tables en un seul jeu de résultats et fusionner les lignes avec la même valeur en fonction de la condition de jointure. Grâce à l'introduction et à l'exemple de code de cet article, j'espère qu'il pourra aider les lecteurs à mieux comprendre l'utilisation et les compétences d'utilisation de la fonction FULL OUTER JOIN.
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!