Maison > base de données > tutoriel mysql > le corps du texte

Comment puis-je obtenir un effet FULL JOIN dans MySQL ?

DDD
Libérer: 2024-11-20 00:18:03
original
584 Les gens l'ont consulté

How can I achieve a FULL JOIN effect in MySQL?

MySQL FULL JOIN ?

Dans MySQL, l'opération FULL JOIN n'est pas directement prise en charge. Cependant, il est possible d’obtenir un résultat similaire en utilisant une combinaison de LEFT JOIN et RIGHT JOIN. Voici comment procéder :

SELECT
    t1.column1,
    t2.column2
FROM
    table1 AS t1
LEFT JOIN
    table2 AS t2
ON
    t1.id = t2.id
UNION ALL
SELECT
    t1.column1,
    NULL
FROM
    table1 AS t1
RIGHT JOIN
    table2 AS t2
ON
    t1.id = t2.id
WHERE
    t2.id IS NULL
Copier après la connexion

Dans cette requête, LEFT JOIN récupère toutes les lignes de la table1 et les fait correspondre aux lignes correspondantes de la table2 en fonction de la colonne id. Le RIGHT JOIN récupère toutes les lignes de la table2 et les fait correspondre aux lignes correspondantes de la table1. L'opérateur UNION ALL combine les résultats des deux jointures.

Disons que nous avons deux tables, "Personnes" et "Commandes", avec les données suivantes :

Persons
P_Id LastName FirstName
1 Hansen Ola
2 Pettersen Kari
3 Svenson Tove
Orders
OrderNo P_Id
22456 1
24562 1
77895 2
44678 2
34764 3

À obtenez le résultat suivant en utilisant la requête ci-dessus :

LastName FirstName OrderNo
Hansen Ola 22456
Hansen Ola 24562
Pettersen Kari 77895
Pettersen Kari 44678
Svenson Tove 34764

Remplacez simplement table1 par "Persons" et table2 par "Commandes" dans la requête et exécutez-la.

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal