Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Joindre 2 Tables | Joindre des Tables
SQL Intermédiaire
course content

Contenu du cours

SQL Intermédiaire

SQL Intermédiaire

1. Grouping
2. Sous-Requêtes Imbriquées
3. Joindre des Tables
4. DDL et DML en SQL

book
Joindre 2 Tables

Nous avons attiré l'attention d'une entreprise qui possède une petite boutique en ligne. Ils possèdent 2 tables qui sont liées entre elles. La première table contient des informations sur les produits vendus sur le site en ligne.

Voici à quoi ressemble la table product:

La deuxième table contient les catégories de produits du site, ainsi qu'une brève description pour chaque catégorie.

Voici à quoi ressemble la table category:

Notre première tâche consiste à joindre ces deux tables pour déterminer combien de produits se trouvent dans chaque catégorie. Nous allons utiliser une instruction JOIN pour y parvenir.

Avant de plonger dans la tâche, comprenons ce qu'est une instruction JOIN et comment elle fonctionne.

Pour joindre deux tables, elles doivent partager une colonne commune. Voyons comment fonctionne JOIN en utilisant les tables employees et department. Leur colonne commune est employees.department et departments.name.

Remarque

Lors de la rédaction des colonnes de ces tables, commencez par le nom de la table, ajoutez un point, puis le nom de la colonne. Cela permet de clarifier le code, surtout lorsque les tables contiennent des colonnes portant le même nom. Cela précise à SQL exactement de quelle table et colonne il s'agit.

Voici la tâche consistant à récupérer le salaire total des employés pour chaque type de département (tech/non-tech).

La requête permettant d'accomplir cette tâche ressemblera à ceci :

1234
SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
copy

Décomposons comment nous avons utilisé JOIN dans notre requête:

  1. Dans la partie SELECT, nous listons les colonnes que nous souhaitons obtenir des deux tables, en incluant le nom de la table pour plus de clarté;
  2. Dans la partie JOIN, nous spécifions la table à joindre et la colonne commune qui les relie. Ici, c'est employees.department et department.name;
  3. Nous regroupons ensuite les données par type pour calculer le salaire total en utilisant la fonction SUM().

Si cela semble complexe, voici une syntaxe simple pour utiliser JOIN:

Remarque

Contrairement à la clause UNION, l'instruction JOIN nous permet de combiner des tables entières, et pas seulement les colonnes qu'elles partagent. De plus, avec JOIN, il n'est pas nécessaire d'utiliser des sous-requêtes comme avec UNION.

Tâche

Swipe to start coding

Vous devez joindre les deux tables : category et product. Les colonnes communes à ces deux tables sont product.category_id et category.id.

Votre tâche consiste à trouver le montant total des produits dans chaque catégorie. Pour ce faire, vous devez calculer la somme de la colonne product.amount.

Utilisez l'alias total_amount pour cette colonne. À la fin de votre requête, triez le résultat par la colonne total_amount en ordre croissant.

Dans la réponse, vous devez avoir 2 colonnes : category.name et total.amount.

Instructions Brèves

  • Récupérez la colonne category.name et la somme de la colonne product.amount à partir de la table product.
  • Attribuez l'alias total_amount à la deuxième colonne.
  • Joignez la table category en utilisant une instruction JOIN.
  • Associez les tables sur la colonne commune product.category_id = category_id.
  • Groupez les résultats par category.name.
  • Triez les résultats par total_amount.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 3. Chapitre 1
toggle bottom row

book
Joindre 2 Tables

Nous avons attiré l'attention d'une entreprise qui possède une petite boutique en ligne. Ils possèdent 2 tables qui sont liées entre elles. La première table contient des informations sur les produits vendus sur le site en ligne.

Voici à quoi ressemble la table product:

La deuxième table contient les catégories de produits du site, ainsi qu'une brève description pour chaque catégorie.

Voici à quoi ressemble la table category:

Notre première tâche consiste à joindre ces deux tables pour déterminer combien de produits se trouvent dans chaque catégorie. Nous allons utiliser une instruction JOIN pour y parvenir.

Avant de plonger dans la tâche, comprenons ce qu'est une instruction JOIN et comment elle fonctionne.

Pour joindre deux tables, elles doivent partager une colonne commune. Voyons comment fonctionne JOIN en utilisant les tables employees et department. Leur colonne commune est employees.department et departments.name.

Remarque

Lors de la rédaction des colonnes de ces tables, commencez par le nom de la table, ajoutez un point, puis le nom de la colonne. Cela permet de clarifier le code, surtout lorsque les tables contiennent des colonnes portant le même nom. Cela précise à SQL exactement de quelle table et colonne il s'agit.

Voici la tâche consistant à récupérer le salaire total des employés pour chaque type de département (tech/non-tech).

La requête permettant d'accomplir cette tâche ressemblera à ceci :

1234
SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
copy

Décomposons comment nous avons utilisé JOIN dans notre requête:

  1. Dans la partie SELECT, nous listons les colonnes que nous souhaitons obtenir des deux tables, en incluant le nom de la table pour plus de clarté;
  2. Dans la partie JOIN, nous spécifions la table à joindre et la colonne commune qui les relie. Ici, c'est employees.department et department.name;
  3. Nous regroupons ensuite les données par type pour calculer le salaire total en utilisant la fonction SUM().

Si cela semble complexe, voici une syntaxe simple pour utiliser JOIN:

Remarque

Contrairement à la clause UNION, l'instruction JOIN nous permet de combiner des tables entières, et pas seulement les colonnes qu'elles partagent. De plus, avec JOIN, il n'est pas nécessaire d'utiliser des sous-requêtes comme avec UNION.

Tâche

Swipe to start coding

Vous devez joindre les deux tables : category et product. Les colonnes communes à ces deux tables sont product.category_id et category.id.

Votre tâche consiste à trouver le montant total des produits dans chaque catégorie. Pour ce faire, vous devez calculer la somme de la colonne product.amount.

Utilisez l'alias total_amount pour cette colonne. À la fin de votre requête, triez le résultat par la colonne total_amount en ordre croissant.

Dans la réponse, vous devez avoir 2 colonnes : category.name et total.amount.

Instructions Brèves

  • Récupérez la colonne category.name et la somme de la colonne product.amount à partir de la table product.
  • Attribuez l'alias total_amount à la deuxième colonne.
  • Joignez la table category en utilisant une instruction JOIN.
  • Associez les tables sur la colonne commune product.category_id = category_id.
  • Groupez les résultats par category.name.
  • Triez les résultats par total_amount.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 3. Chapitre 1
Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
We're sorry to hear that something went wrong. What happened?
some-alt