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

Que retournera MySQL si je n'utilise pas le mot-clé « RIGHT » ou « LEFT » lorsque j'écris une requête RIGHT JOIN ou LEFT JOIN ?

WBOY
Libérer: 2023-08-25 18:05:06
avant
1334 Les gens l'ont consulté

如果我在编写 RIGHT JOIN 或 LEFT JOIN 查询时不使用关键字“RIGHT”或“LEFT”,MySQL 将返回什么?

Dans les deux cas, c'est-à-dire lorsque le mot-clé "RIGHT" ou "LEFT" n'est pas utilisé dans la requête, MySQL renverra les résultats sous forme de requête INNER JOIN. En effet, la seule différence entre RIGHT, LEFT et INNER JOIN est le mot-clé RIGHT ou LEFT. Pour le comprendre, prenons l'exemple de deux tables nommées tbl_1 et tbl_2 qui ont les données suivantes-

mysql> Select * from tbl_1;
+----+--------+
| Id | Name   |
+----+--------+
| 1  | Gaurav |
| 2  | Rahul  |
| 3  | Raman  |
| 4  | Aarav  |
+----+--------+
4 rows in set (0.00 sec)

mysql> Select * from tbl_2;
+----+---------+
| Id | Name    |
+----+---------+
| A  | Aarav   |
| B  | Mohan   |
| C  | Jai     |
| D  | Harshit |
+----+---------+
4 rows in set (0.00 sec)
Copier après la connexion

Maintenant, la requête pour RIGHT JOIN en utilisant le mot-clé RIGHT peut être la suivante-

mysql> SELECT tbl_1.id,tbl_2.id FROM tbl_1 RIGHT JOIN tbl_2 ON tbl_1.name = tbl_2.name;
+------+----+
| id   | id |
+------+----+
| 4    | A  |
| NULL | B  |
| NULL | C  |
| NULL | D  |
+------+----+
4 rows in set (0.00 sec)
Copier après la connexion

Maintenant, dans la requête suivante, nous Sans utiliser le mot-clé RIGHT -

mysql> Select tbl_1.id,tbl_2.id FROM tbl_1 JOIN tbl_2 ON tbl_1.name = tbl_2.name;
+----+----+
| id | id |
+----+----+
| 4  | A  |
+----+----+
1 row in set (0.00 sec)
Copier après la connexion
Copier après la connexion

À partir de l'ensemble de résultats ci-dessus, nous pouvons observer la différence, sans utiliser le mot-clé 'RIGHT', MySQL le traitera comme une requête INNER JOIN et renverra les résultats en conséquence.

Maintenant, la requête pour LEFT JOIN en utilisant le mot-clé LEFT peut être la suivante -

mysql> SELECT tbl_1.id,tbl_2.id FROM tbl_1 LEFT JOIN tbl_2 ON tbl_1.name = tbl_2.name;
+----+------+
| id | id   |
+----+------+
| 1  | NULL |
| 2  | NULL |
| 3  | NULL |
| 4  | A    |
+----+------+
4 rows in set (0.02 sec)
Copier après la connexion

Maintenant, dans la requête suivante, nous n'utilisons pas le mot-clé LEFT -

mysql> Select tbl_1.id,tbl_2.id FROM tbl_1 JOIN tbl_2 ON tbl_1.name = tbl_2.name;
+----+----+
| id | id |
+----+----+
| 4  | A  |
+----+----+
1 row in set (0.00 sec)
Copier après la connexion
Copier après la connexion

À partir de l'ensemble de résultats ci-dessus, nous pouvons observer la différence, sans utiliser la clé Dans le cas du mot "LEFT", MySQL le traite comme une requête INNER JOIN et renvoie les résultats en conséquence.

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:tutorialspoint.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