Maison >Périphériques technologiques >IA >Jointure à gauche SQL vs jointure extérieure gauche
SQL est un outil puissant pour interagir avec les bases de données relationnelles. Lorsque vous travaillez avec des tables dans SQL, vous devez souvent combiner des données à partir de plusieurs tables. C'est là que vous joignez les opérations à aider. La jointure gauche et la jointure extérieure gauche sont deux commandes couramment utilisées. Bien qu'ils semblent différents, ils remplissent en fait la même fonction. Comprenons le travail et la différence entre la jointure de gauche SQL par rapport à la jointure extérieure gauche.
dans la syntaxe ci-dessus:
SELECT columns FROM left_table LEFT JOIN right_table ON left_table.column_name = right_table.column_name;
Left_Table
: la table principale à partir de laquelle toutes les lignes sont renvoyées.Cette requête récupère tous les employés et leurs noms de département correspondants. Si un employé n'est affecté à aucun département, le résultat affichera Null pour le nom du département.
LIRE AUSSI: JOINS EN SQL - INTER, GAUCHE, DROITE ET FULLE JOINS EXPLAMINÉSSELECT employees.name, departments.department_name FROM employees LEFT JOIN departments ON employees.department_id = departments.id;
Qu'est-ce qu'une jointure extérieure gauche?
La jointure extérieure gauche fonctionne exactement comme la jointure de gauche. Il renvoie toutes les lignes de la table gauche et des lignes correspondantes de la table droite. S'il n'y a pas de correspondance, il renvoie Null pour les colonnes de la bonne table. Le terme «extérieur» est facultatif et ne modifie pas le comportement de la jointure. Il est souvent utilisé pour la clarté dans certains dialectes SQL.
En utilisant le même exemple que ci-dessus, nous pourrions réécrire notre requête comme suit:
Comme vous pouvez le voir, la syntaxe est identique à la jointure gauche. La seule différence est l'inclusion du mot extérieur.SELECT columns FROM left_table LEFT OUTER JOIN right_table ON left_table.column_name = right_table.column_name;
Exemple de jointure externe gauche
Cette requête récupère également tous les employés et leurs noms de département correspondants, tout comme la direction de gauche. Si un employé n'est affecté à aucun département, le résultat affichera Null pour le nom du département.
LIRE AUSSI: Guide SQL de Basics to Advance LevelSELECT employees.name, departments.department_name FROM employees LEFT OUTER JOIN departments ON employees.department_id = departments.id;
Alors que les termes gauche jointure et La jointure externe gauche peut apparaître différente, ils sont fonctionnellement identiques dans SQL. La seule différence réside dans la syntaxe:
Les deux commandes renvoient les mêmes résultats, donc le choix entre eux est une question de préférence personnelle ou organisationnelle.
Pour créer une exemple de base de données avec des employés et des tables de départements, puis utilisez les exemples de jointure de gauche et de droite, vous pouvez utiliser les commandes SQL suivantes.
Tout d'abord, créez la base de données où résideront les tables.
SELECT columns FROM left_table LEFT JOIN right_table ON left_table.column_name = right_table.column_name;
Maintenant, créons les tables des employés et des départements.
SELECT employees.name, departments.department_name FROM employees LEFT JOIN departments ON employees.department_id = departments.id;
Maintenant, insérez quelques exemples de données dans les deux tables:
SELECT columns FROM left_table LEFT OUTER JOIN right_table ON left_table.column_name = right_table.column_name;
Sortie:
SELECT employees.name, departments.department_name FROM employees LEFT OUTER JOIN departments ON employees.department_id = departments.id;
Sortie:
Maintenant que la base de données et les tables sont créées et remplies de données, vous pouvez exécuter les requêtes de jointure à gauche et à droite.
CREATE DATABASE company_db; USE company_db;
Sortie:
-- Create the 'departments' table CREATE TABLE departments ( id INT PRIMARY KEY, department_name VARCHAR(100) NOT NULL ); -- Create the 'employees' table CREATE TABLE employees ( id INT PRIMARY KEY, name VARCHAR(100) NOT NULL, department_id INT, FOREIGN KEY (department_id) REFERENCES departments(id) );
Sortie:
En résumé, la jointure gauche et la jointure externe gauche sont des termes synonymes de SQL qui servent le même but de combiner les données de deux tables tout en veillant à ce que tous les enregistrements de la table de gauche soient inclus dans l'ensemble de résultats. Le choix entre l'utilisation d'un terme sur l'autre revient souvent à la préférence personnelle ou organisationnelle. Comprendre cela peut améliorer votre efficacité lors de la rédaction de requêtes SQL et empêcher la confusion pendant les tâches de manipulation des données.
Mettez vos connaissances SQL pour tester avec ces projets SQL!
a. Il n'y a pas de différence. La jointure gauche et la jointure extérieure gauche sont fonctionnellement identiques. Le terme «extérieur» est facultatif et utilisé pour la clarté.
Q2. Quand dois-je utiliser une jointure de gauche?a. Utilisez une jointure de gauche lorsque vous avez besoin de tous les enregistrements de la table de gauche, même s'il n'y a pas d'enregistrements correspondants dans la table droite.
Q3. La jointure de gauche inclut-elle les valeurs nuls?a. Oui, une jointure gauche renvoie les valeurs nulles pour les colonnes de la table droite lorsqu'il n'y a pas de correspondance pour une ligne dans la table de gauche.
Q4. Puis-je utiliser la jointure gauche et la jointure extérieure gauche interchangeable?a. Oui, vous pouvez utiliser la jointure gauche et la jointure externe gauche interchangeable dans les requêtes SQL. Les deux produisent les mêmes résultats.
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!