Maison > base de données > tutoriel mysql > Qu'est-ce que la requête de connexion MySQL

Qu'est-ce que la requête de connexion MySQL

王林
Libérer: 2023-05-30 23:50:42
avant
1468 Les gens l'ont consulté

INNERJOIN

  • INNERJOIN est l'opération de connexion la plus couramment utilisée. Décrite en termes mathématiques, cette phrase peut être réécrite ainsi : du point de vue de la théorie des ensembles, nous avons besoin de l'intersection de deux ensembles et du point de vue du produit cartésien, nous devons filtrer les éléments du produit cartésien qui satisfont à la condition ON ;

  • À mon avis, les jointures internes sont similaires aux jointures équivalentes. Les jointures naturelles sont une connexion spéciale dans les jointures internes

#. 🎜🎜#La différence entre une connexion naturelle et une connexion équivalente

Qu'est-ce que la connexion naturelle ?

  • La jointure naturelle est une équijointure spéciale, qui nécessite que les composants comparés dans deux relations soient le même groupe d'attributs, et dans le résultat, supprimez les colonnes d'attributs en double.

Qu'est-ce qu'une connexion à valeur égale ?

  • Equijoin est une méthode de connexion courante pour les opérations de jointure relationnelle. Il s'agit d'un cas particulier de connexion conditionnelle (ou connexion θ) lorsque l'opérateur de connexion est "=", c'est-à-dire lorsque θ=0

Exemple d'analyse : # 🎜🎜#

Tableaaa

Quest-ce que la requête de connexion MySQLTablebbb :

# 🎜 🎜 #Interroger les données avec les attributs égaux C B D dans la table aaa et la table bbbQuest-ce que la requête de connexion MySQL

Requête Equijoin :

SElect*from aaa,bbb WHERE aaa.C=bbb.C and aaa.D=bbb.D and aaa.E=bbb.E
Copier après la connexion
Copier après la connexion

Résultat :

#🎜 🎜#

Requête de connexion naturelle :

-- 自然连接用关键字 natural join
SELECT*from aaa natural join bbb;
Copier après la connexion
Quest-ce que la requête de connexion MySQLRésultat :

À partir des deux résultats ci-dessus, nous pouvons obtenir Pour conclure, une équijointure sélectionne des données spécifiques de valeurs égales à partir de l'intersection de deux tables. La jointure naturelle fait référence au fait de prendre des données avec les mêmes attributs et des valeurs d'attribut égales dans deux tables et d'éliminer ces mêmes colonnes d'attributs.

Quest-ce que la requête de connexion MySQLComment implémenter la jointure interne

Le premier type : où

SElect*from aaa,bbb WHERE aaa.C=bbb.C and aaa.D=bbb.D and aaa.E=bbb.E
Copier après la connexion
Copier après la connexion

Le deuxième type : jointure interne

select*from aaa inner join bbb on aaa.C=bbb.C and aaa.D=bbb.D and aaa.E=bbb.E;
Copier après la connexion

Le troisième type : join

select*from aaa join bbb on aaa.C=bbb.C and aaa.D=bbb.D and aaa.E=bbb.E;
Copier après la connexion

Le quatrième type : STRAIGHT_JOIN

select*from aaa STRAIGHT_JOIN bbb on aaa.C=bbb.C and aaa.D=bbb.D and aaa.E=bbb.E;
Copier après la connexion

Les trois derniers ont le même effet, et le troisième type peut être compris comme l'abréviation du deuxième type . La principale différence entre le quatrième et le deuxième type réside dans la méthode d'insertion. Les performances du quatrième type sont légèrement inférieures. Trois types : jointure externe gauche, jointure externe droite, jointure externe complète. Vous pouvez utiliser des jointures gauches, des jointures droites et des jointures complètes dans les instructions SQL pour réaliser cette fonction.

jointure à gauche

Qu'est-ce qu'une jointure à gauche ?

    LEFT JOIN signifie prendre l'intersection du tableau A et du tableau B, et inclure également les données restantes dans le tableau de gauche. Du point de vue du produit cartésien, nous devons d'abord sélectionner les enregistrements qui répondent aux conditions de la clause ON, puis ajouter les enregistrements restants dans le tableau de gauche A
  • #🎜 🎜#
  • Implémentation du code :
select*from aaa left join bbb on aaa.C=bbb.C and aaa.D=bbb.D and aaa.E=bbb.E;
Copier après la connexion

Résultat :

right join

Quest-ce que la requête de connexion MySQL Qu'est-ce que une jointure à gauche ?

De même, RIGHT JOIN équivaut à obtenir l'intersection du tableau A et du tableau B, plus les données restantes du tableau B. Lorsque vous décrivez la bonne jointure, vous pouvez commencer du point de vue du produit cartésien, c'est-à-dire sélectionner les enregistrements qui répondent à la condition ON et leur ajouter les enregistrements non sélectionnés dans la bonne table

Quest-ce que la requête de connexion MySQL #🎜🎜 #

Implémentation du code :

select*from aaa right join bbb on aaa.C=bbb.C and aaa.D=bbb.D and aaa.E=bbb.E;
Copier après la connexion

Résultat :
  • Connexion complète# 🎜🎜#
La jointure externe complète consiste à trouver l'union des ensembles de deux tables A et B. Du point de vue du produit cartésien, il s'agit de sélectionner les enregistrements dont la condition de clause ON est vraie dans le produit cartésien, puis d'ajouter les enregistrements restants dans la table de gauche, et enfin d'ajouter les enregistrements restants dans la table de droite. De plus, MySQL ne prend pas en charge OUTER JOIN, mais nous pouvons implémenter des opérations UNION sur les résultats des jointures gauche et droite.

Quest-ce que la requête de connexion MySQL

Implémentation du code :

select*from aaa left join bbb on aaa.C=bbb.C and aaa.D=bbb.D and aaa.E=bbb.E
union 
select*from aaa right join bbb on aaa.C=bbb.C and aaa.D=bbb.D and aaa.E=bbb.E
Copier après la connexion

Résultat :

Quest-ce que la requête de connexion MySQL

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:yisu.com
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