Maison > Article > base de données > Comment faire la différence entre une jointure externe gauche, une jointure externe droite et une jointure externe complète ?
La jointure externe gauche renverra tous les enregistrements de la table de gauche et les enregistrements égaux au champ de jointure dans la table de droite ; s'il n'y a pas de données dans la table de droite, elle sera nulle. Une jointure externe droite renverra tous les enregistrements de la table de droite qui sont égaux aux champs de jointure de la table de gauche ; null s'il n'y a aucune donnée dans la table de gauche. Une jointure externe complète renverra tous les enregistrements des tables de gauche et de droite qui sont égaux aux champs de jointure des tables de gauche et de droite.
Dans SQL, les jointures externes incluent la jointure gauche (jointure gauche), la jointure droite (jointure droite) et la jointure externe complète (jointure complète).
Jointure externe gauche (jointure gauche) : renvoie tous les enregistrements de la table de gauche et les enregistrements avec des champs de jointure égaux dans la table de droite.
Jointure externe droite (jointure droite) : renvoie tous les enregistrements de la table de droite et les enregistrements avec des champs de jointure égaux dans la table de gauche.
Jointure externe complète : renvoie tous les enregistrements dans les tables de gauche et de droite et les enregistrements avec des champs de jointure égaux dans les tables de gauche et de droite.
Mettez d'abord deux tables, une table d'élève; une table de notes
Jointure externe gauche
renverra toutes les lignes de la table de droite. Si une ligne du tableau de gauche n'a pas de ligne correspondante dans le tableau de droite, une valeur nulle sera renvoyée pour la table de droite. Jointure gauche : sélectionnez *from Student LEFT JOIN Score ON Student.s_id=Score.s_id
avec la table de gauche comme table principale, la table de droite n'a aucune donnée et est nulleLa jointure externe droite
reviendra toutes les lignes du tableau de droite. Si une ligne du tableau de droite n'a pas de ligne correspondante dans le tableau de gauche, une valeur nulle sera renvoyée pour le tableau de gauche La table de droite est la table principale, et s'il n'y a aucune donnée dans la table de droite ; la table de gauche, nullselect *from Student right JOIN Score ON Student.s_id=Score.s_id
Jointure externe complète (FULL JOIN ou FULL OUTER JOIN)
Une jointure externe complète renvoie tout lignes dans les tableaux de gauche et de droite. Lorsqu'une ligne n'a aucune ligne correspondante dans une autre table, la colonne de liste de sélection de l'autre table contient des valeurs nulles. S'il existe des lignes correspondantes entre les tables, la ligne entière de l'ensemble de résultats contient les valeurs de données de la table de base.select *from Student full JOIN Score ON Student.s_id=Score.s_id select *from Student full outer JOIN Score ON Student.s_id=Score.s_idRecommandations associées : "
Tutoriel SQL"
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!