Joindre Deux Tables
Nous avons attiré l'attention d'une entreprise qui possède une petite boutique en ligne. Elle dispose de 2 tables qui sont liées entre elles. La première table contient des informations sur les produits vendus dans la boutique en ligne.
La deuxième table contient les catégories de produits du site web, ainsi qu'une brève description pour chaque catégorie.
Notre première tâche consiste à joindre ces deux tables afin de déterminer combien de produits se trouvent dans chaque catégorie. Nous utiliserons une instruction JOIN pour cela.
Avant d'aborder la tâche, examinons 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.
Lors de l'écriture des colonnes de ces tables, commencez par le nom de la table, ajoutez un point, puis le nom de la colonne. Cela permet de garder le code clair, surtout lorsque les tables ont des colonnes portant le même nom. Cela indique à SQL exactement de quelle table et colonne il s'agit.
Voici la tâche consistant à récupérer le salaire total des employés dans chaque type de département (tech/non-tech).
La requête pour accomplir cette tâche ressemblera à ceci :
1234SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
Analysons comment nous avons utilisé JOIN dans notre requête :
- Dans la partie
SELECT, énumération des colonnes souhaitées provenant des deux tables, en précisant le nom de la table pour plus de clarté ; - Dans la partie
JOIN, indication de la table à joindre et de la colonne commune qui les relie. Ici, il s'agit deemployees.departmentetdepartment.name; - Regroupement des données par
typeafin de calculer le salaire total à l'aide de la fonctionSUM().
Si cela paraît complexe, voici une syntaxe simple pour utiliser JOIN :
SELECT table1.column, table2.column
FROM table1
JOIN table2 ON table1.common_column = table2.common_column
Contrairement à la clause UNION, l'instruction JOIN permet de combiner des tables entières, et pas seulement les colonnes qu'elles ont en commun. De plus, avec JOIN, il n'est pas nécessaire d'utiliser des sous-requêtes comme avec UNION.
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 objectif est de trouver le montant total des produits dans chaque catégorie. Pour cela, 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 dans l'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.nameet la somme de la colonneproduct.amountdepuis la tableproduct. - Attribuez l'alias
total_amountà la seconde colonne. - Joignez la table
categoryà l'aide d'une instructionJOIN. - Faites la correspondance entre les tables sur la colonne commune
product.category_id = category.id. - Regroupez les résultats par
category.name. - Triez les résultats par
total_amount.
Solution
Merci pour vos commentaires !
single
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Can you explain the different types of SQL JOINs?
How do I know which column to use for joining tables?
Can you show an example using the products and categories tables?
Génial!
Completion taux amélioré à 4
Joindre Deux Tables
Glissez pour afficher le menu
Nous avons attiré l'attention d'une entreprise qui possède une petite boutique en ligne. Elle dispose de 2 tables qui sont liées entre elles. La première table contient des informations sur les produits vendus dans la boutique en ligne.
La deuxième table contient les catégories de produits du site web, ainsi qu'une brève description pour chaque catégorie.
Notre première tâche consiste à joindre ces deux tables afin de déterminer combien de produits se trouvent dans chaque catégorie. Nous utiliserons une instruction JOIN pour cela.
Avant d'aborder la tâche, examinons 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.
Lors de l'écriture des colonnes de ces tables, commencez par le nom de la table, ajoutez un point, puis le nom de la colonne. Cela permet de garder le code clair, surtout lorsque les tables ont des colonnes portant le même nom. Cela indique à SQL exactement de quelle table et colonne il s'agit.
Voici la tâche consistant à récupérer le salaire total des employés dans chaque type de département (tech/non-tech).
La requête pour accomplir cette tâche ressemblera à ceci :
1234SELECT department.type, SUM(employees.salary) AS total_salary FROM employees JOIN department ON employees.department = department.name GROUP BY department.type
Analysons comment nous avons utilisé JOIN dans notre requête :
- Dans la partie
SELECT, énumération des colonnes souhaitées provenant des deux tables, en précisant le nom de la table pour plus de clarté ; - Dans la partie
JOIN, indication de la table à joindre et de la colonne commune qui les relie. Ici, il s'agit deemployees.departmentetdepartment.name; - Regroupement des données par
typeafin de calculer le salaire total à l'aide de la fonctionSUM().
Si cela paraît complexe, voici une syntaxe simple pour utiliser JOIN :
SELECT table1.column, table2.column
FROM table1
JOIN table2 ON table1.common_column = table2.common_column
Contrairement à la clause UNION, l'instruction JOIN permet de combiner des tables entières, et pas seulement les colonnes qu'elles ont en commun. De plus, avec JOIN, il n'est pas nécessaire d'utiliser des sous-requêtes comme avec UNION.
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 objectif est de trouver le montant total des produits dans chaque catégorie. Pour cela, 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 dans l'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.nameet la somme de la colonneproduct.amountdepuis la tableproduct. - Attribuez l'alias
total_amountà la seconde colonne. - Joignez la table
categoryà l'aide d'une instructionJOIN. - Faites la correspondance entre les tables sur la colonne commune
product.category_id = category.id. - Regroupez les résultats par
category.name. - Triez les résultats par
total_amount.
Solution
Merci pour vos commentaires !
single