Code SQL copié dans le presse-papiers
Apprenez les fondamentaux des JOINs SQL dans cette leçon claire. Comprenez comment combiner des données de plusieurs tables relationnelles avec des exemples pratiques. Ce tutoriel couvre les concepts clés de la clause JOIN pour écrire des requêtes puissantes. Parfait pour les débutants en SQL.
RU EN PT

Leçon 5.1 : Fondamentaux des JOINs en SQL

Dans les bases de données relationnelles, l'information est stockée sous forme de tables liées entre elles. Pour extraire des données pertinentes, il faut savoir les relier. L'opération JOIN en SQL sert à cela : elle permet de combiner des lignes de deux ou plusieurs tables selon une colonne commune.

Cette leçon pose les bases pour comprendre le JOIN, concept clé du travail avec des données relationnelles.

Le concept central du JOIN

Un JOIN permet de fusionner des lignes de différentes tables en un seul jeu de résultats, selon une condition (souvent sur des colonnes clés).

Imaginez deux tables : customer et payment. La table payment possède une colonne customer_id qui indique quel client a effectué le paiement. Un JOIN permet de "coller" les lignes de ces deux tables pour afficher, par exemple, le nom du client à côté de chaque paiement.

Comment ça fonctionne :

  1. Vous indiquez les deux tables à joindre.
  2. Vous définissez la condition de jointure dans la clause ON, par exemple customer.customer_id = payment.customer_id.
  3. La base de données parcourt les lignes, trouve les paires correspondantes et forme de nouvelles lignes combinées.

Visualisation :

  Table A (customer)      Table B (payment)
  +----+-------+            +----+----------+
  | id | nom   |            | id | montant  |
  +----+-------+            +----+----------+
  | 1  | Ivan  | <-----\    | 1  | 100.00   |
  | 2  | Maria |       \--->| 1  | 50.00    |
  | 3  | Pierre|            | 3  | 200.00   |
  +----+-------+            +----+----------+

Les flèches montrent comment les lignes de la table payment trouvent leur client correspondant dans la table customer grâce à l'identifiant.

Application pratique

Voyons à quoi cela ressemble dans une requête SQL réelle (base Sakila).

  1. Liste des clients et leurs paiements : Cette requête joint les tables customer et payment pour afficher le prénom et nom du client à côté de chaque paiement.

    SELECT
        c.first_name,
        c.last_name,
        p.amount,
        p.payment_date
    FROM
        customer AS c
    JOIN
        payment AS p ON c.customer_id = p.customer_id;
    
    • JOIN payment AS p indique qu'on joint la table payment.
    • ON c.customer_id = p.customer_id définit la relation.
    • c et p sont des alias pour raccourcir et clarifier la requête.
  2. Liste des films et leur langue : On joint les tables film et language pour afficher le titre de chaque film et sa langue.

    SELECT
        f.title,
        l.name AS language
    FROM
        film AS f
    JOIN
        language AS l ON f.language_id = l.language_id;
    

    Ici, la relation s'établit via la clé language_id.

Points clés de cette leçon

  • JOIN est une opération fondamentale pour manipuler des données relationnelles.
  • La jointure repose sur une condition dans la clause ON.
  • Utiliser des alias (customer AS c) améliore la lisibilité.
  • JOIN ne modifie pas les données originales ; il crée un jeu de résultats temporaire.

Dans les prochaines leçons, nous explorerons les différents types de jointures (INNER JOIN, LEFT JOIN, RIGHT JOIN) et leur impact sur le résultat final.