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

Quelle est la différence entre la jointure gauche et la jointure droite d'une base de données ?

清浅
Libérer: 2020-09-08 10:55:25
original
65934 Les gens l'ont consulté

La différence entre la jointure gauche et la jointure droite dans la base de données peut être résumée en une phrase : jointure gauche où n'affecte que la table de droite, jointure droite où n'affecte que la table de gauche

Quelle est la différence entre la jointure gauche et la jointure droite d'une base de données ?

[Cours recommandés : Tutoriel MySQL]

La différence entre la jointure gauche et la jointure droite dans la base de données

Jointure à gauche

select * from tbl1 Left Join tbl2 where tbl1.ID = tbl2.ID
Copier après la connexion

Le résultat de la recherche après la jointure à gauche consiste à afficher toutes les données de tbl1 et les données de tbl2 qui répondent à la condition Where .
En bref, Left Join affecte la table de droite

Right Join (Right Join)

select * from tbl1 Right Join tbl2 where tbl1.ID = tbl2.ID
Copier après la connexion

Le résultat de la recherche est tbl2 All les données et les données dans tbl1 qui répondent à la condition Where.
En bref, Right Join affecte le tableau de gauche.

Jointure interne

select * FROM tbl1 INNER JOIN tbl2 ON tbl1.ID = tbl2.ID
Copier après la connexion

Sa fonction est la même que select * from tbl1, tbl2 where tbl1.id=tbl2.id.

Autre contenu :

1 L'instruction de connexion utilisée dans la clause WHERE est appelée connexion implicite dans le langage de base de données. INNER JOIN... La jointure produite par la clause ON est appelée jointure explicite. (D'autres paramètres JOIN sont également des connexions explicites) Il n'y a pas de différence essentielle dans la relation de connexion entre WHERE et INNER JOIN, et les résultats sont les mêmes. Cependant, avec la standardisation et le développement des langages de bases de données, les connexions implicites ont été progressivement éliminées. Les langages de bases de données plus récents ont pratiquement abandonné les connexions implicites et ont tous adopté des connexions explicites.

2. Peu importe la façon dont vous vous connectez, vous pouvez utiliser la clause join, mais lorsque vous connectez la même table, veillez à définir un alias, sinon une erreur se produira

(1) interne join : compris comme " "Connexion effective", seules les données qui existent dans les deux tables seront affichées left join : compris comme "avec affichage à gauche", par exemple, sur a.field=b.field, il affichera toutes les données qui existe dans la table a et toutes les données dans a\b Les données dans A et non dans B sont affichées comme nulles

(2) jointure à droite : comprise comme "affichée à droite", par exemple sur un .field=b.field, il affiche l'existence dans la table B Toutes les données de et les données dans a\b, les données dans B et non dans A sont affichées comme nulles

(3) jointure complète : compris comme "jointure complète", toutes les données des deux tables sont affichées, En fait, c'est intérieur + (intérieur gauche) + (intérieur droit)

3. La jointure peut être divisée en primaire et secondaire Il existe trois types de jointures externes : la jointure externe complète, la jointure gauche et la jointure droite. Une jointure externe complète contient tous les enregistrements des deux tables. La jointure de gauche est basée sur la table de gauche et celle de droite est supplémentaire. L'inverse est vrai pour la jointure de droite

4. Généralement, pour faire la. pour améliorer les performances des instructions de requête de base de données, suivez les principes suivants :

Lors des requêtes de connexion entre tables, la grande table vient en premier et la petite table vient en premier

Ne pas utiliser d'alias de table, utilisez préfixes de champ pour distinguer les champs dans différentes tables

Les restrictions dans les conditions de requête doivent être écrites avant les conditions de connexion à la table

Essayez d'utiliser les champs indexés comme conditions de requête

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!

Étiquettes associées:
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