top of page

INNER JOIN

La commande INNER JOIN en SQL est une des requêtes permettant de réaliser une jointure entre deux tables. Les jointures servent à lire simultanément des données issues de deux tables d’une base de données. L’instruction INNER JOIN permet de réaliser une jointure interne. C’est aussi la jointure interne qui sera effectuée automatiquement si on utilise simplement l’instruction JOIN.


Voici la syntaxe courante :


SELECT table1.column1, column3 FROM table1 INNER JOIN table2 ON table1.column1=table2.column2 ;


> Pour chaque ligne de table1, cette requête regarde si la valeur dans la colonne column1 correspond à la valeur dans column2 de table2. Si il existe des lignes de table2 pour lesquelles la valeur correspond, alors les informations de ces lignes sont concaténées dans l’affichage renvoyé.


Exemple d’utilisation :


Imaginons une base de données ‘gest_fact’, qu’une entreprise a créée pour stocker les données relatives aux factures qu’elle a émises : la liste des produits commercialisés par l’entreprise, la liste des factures émises par l’entreprise et le détail de chaque ligne de facture. ‘Gest_fact’ est constituée de trois tables : ‘produit’, ‘facture’ et ‘ligne_facture’. On souhaite maintenant lire, pour chaque produit, les noms des clients qui en ont déjà acheté. L’information des noms des clients ayant payé chaque facture se trouve dans la table ‘facture’, mais l’information des produits vendus dans chaque facture se trouve dans la table ‘ligne_facture’. On va donc réaliser une jointure. Voici le code correspondant :


SELECT DISTINCT nom_produit, nom_client FROM facture JOIN ligne_facture ON facture.num_facture=ligne_facture.num_facture ;


Voici le début du résultat de l'exécution du code :


_


Nos formations sur https://www.apprendresql.com/ 


Voir autres : ALTER TABLE, CREATE TABLE, DROP TABLE, AND, AS, AUTO_INCREMENT, AVG(), BETWEEN, COUNT(), CROSS JOIN, DELETE, DISTINCT, FOREIGN KEY, FULL JOIN, GROUP BY, HAVING, IN, INNER JOIN, INSERT, INTERSECT, IS NULL, LEFT JOIN, LIKE, MAX(), MERGE, MIN(), NATURAL JOIN, OR, ORDER BY, PRIMARY KEY, RIGHT JOIN, SELECT, SUM(), UNION, UPDATE, WITH ROLLUP, GRANT, REVOKE, BEGIN TRANSACTION, COMMIT, ROLLBACK, SAVEPOINT


bottom of page