Maison >base de données >tutoriel mysql >Requête de connexion Mysql jointure gauche, jointure droite, exemple de jointure interne explication détaillée

Requête de connexion Mysql jointure gauche, jointure droite, exemple de jointure interne explication détaillée

小云云
小云云original
2018-01-06 13:47:032938parcourir

Cet article présente principalement les informations pertinentes sur la requête de connexion MySQL (connexion gauche, connexion droite, connexion interne). Voici des exemples d'utilisation et un exemple de code ci-joint. J'espère que les amis qui en ont besoin pourront s'y référer. peut aider tout le monde.

1. Connexions MySQL communes

  • INNER JOIN (jointure interne ou jointure équivalente) : obtenez la relation de correspondance entre les champs de deux tables. .

  • LEFT JOIN : obtenez tous les enregistrements de la table de gauche, même s'il n'y a aucun enregistrement correspondant dans la table de droite.

  • RIGHT JOIN (right join) : Contrairement à LEFT JOIN, il est utilisé pour obtenir tous les enregistrements de la table de droite, même s'il n'y a pas d'enregistrement correspondant correspondant dans la table de gauche.


mysql> select * from name_address;
+----------+------+----+
| address | name | id |
+----------+------+----+
| 西北一路 | 张三 | 1 |
| 西北二路 | 李四 | 2 |
| 西北三路 | 王五 | 3 |
+----------+------+----+
3 rows in set

mysql> select * from name_age;
+-----+--------+----+
| age | name  | id |
+-----+--------+----+
| 18 | 张三  | 1 |
| 20 | 王五  | 2 |
| 21 | 路人甲 | 3 |
+-----+--------+----+
3 rows in set

1. INNER JOIN

INNER JOIN et tables de jointure générales la requête est cohérente, c'est-à-dire qu'elle utilise des méthodes de requête séparées par des virgules.


mysql> SELECT a.`name`,a.age,b.address FROM name_age a INNER JOIN name_address b WHERE(on) a.`name`=b.`name`;
+------+-----+----------+
| name | age | address |
+------+-----+----------+
| 张三 | 18 | 西北一路 |
| 王五 | 20 | 西北三路 |
+------+-----+----------+
2 rows in set

2. JOINDRE À GAUCHE

Sous réserve du tableau de données à gauche


mysql> SELECT a.`name`,a.age,b.address FROM name_age a left JOIN name_address b on
 a.`name`=b.`name`;
+--------+-----+----------+
| name  | age | address |
+--------+-----+----------+
| 张三  | 18 | 西北一路 |
| 王五  | 20 | 西北三路 |
| 路人甲 | 21 | NULL   |
+--------+-----+----------+
3 rows in set

3. RIGHT JOIN

est l'opposé de LEFT JOIN, c'est-à-dire que les données à droite prévalent


mysql> SELECT b.`name`,a.age,b.address FROM name_age a right JOIN name_address b on a.`name`=b.`name`;
+------+------+----------+
| name | age | address |
+------+------+----------+
| 张三 | 18  | 西北一路 |
| 王五 | 20  | 西北三路 |
| 李四 | NULL | 西北二路 |
+------+------+----------+
3 rows in set

Recommandations associées :

L'importance des index dans les requêtes de connexion MySQL

Requête de connexion mysql classique Petit exemple_MySQL

Requête de connexion mysql classique exemple_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!

Déclaration:
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