Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Clause Group By | Regroupement
SQL Intermédiaire

bookClause Group By

Bienvenue dans le cours SQL Intermédiaire !

Dans la première section, nous allons explorer comment regrouper et agréger des données au sein de nos tables.

Comprenons ce que signifie "regrouper des données" à l'aide d'un exemple simple d'une table employees :

Regroupement des données

Nous avons pour objectif de déterminer le nombre d'employés dans chaque département. Pour cela, nous allons regrouper les données par la colonne department et utiliser une agrégation avec la fonction COUNT(*).

Voici à quoi ressemblera l'implémentation :

123
SELECT department, COUNT(*) AS number_of_employees FROM employees GROUP BY department
copy

Ainsi, comme vous pouvez le constater, la syntaxe pour regrouper des données est la suivante :

SELECT column1, AGG_FUNC(column2)
FROM table
GROUP BY column1

Remarque

AGG_FUNC désigne les fonctions d'agrégation telles que MAX, MIN, COUNT, etc.

Cette syntaxe permet de trouver certaines valeurs à l'aide de fonctions d'agrégation sur des colonnes spécifiques.

Prenons un autre exemple : on nous a demandé de trouver le département avec le salaire moyen le plus élevé.

Pour obtenir ces données, il faut regrouper les données par la colonne department puis utiliser la fonction AVG() pour calculer le salaire moyen :

123
SELECT department, AVG(salary) as average_salary FROM employees GROUP BY department
copy

Dans cette partie de la section, nous travaillerons avec la base de données du métro de Montréal, qui contient la table metro_travel_time.

Cette table contiendra des informations sur la ligne de station (line_name), son nom (station_name), et le temps nécessaire pour qu'un train parcourt d'une station à la suivante (time_to_next_station).

Voici à quoi ressemble cette table et un aperçu des données qu'elle contient :

Comme vous pouvez le constater, il ne s'agit pas d'une table complexe. Réfléchissons à la manière dont nous pouvons utiliser le regroupement ici.

L'option la plus évidente est le regroupement par couleur des lignes de métro. Cela signifie que nous pouvons agréger les données en les regroupant par couleur de la ligne de métro.

Alias

Dans les exercices, vous utiliserez souvent un concept appelé alias. Un alias est essentiellement un « surnom » donné à une colonne que vous récupérez avec une instruction SELECT. Il s'indique avec la syntaxe suivante :

SELECT column AS alias

Un alias n'affecte que la façon dont la colonne apparaît dans la réponse.

Par exemple, au lieu de MAX(time), la colonne pourrait être appelée max_time si vous lui attribuez cet alias. Cela rend le résultat plus lisible et clair.

Tâche

Swipe to start coding

Votre tâche consiste à trouver le temps le plus long jusqu'à la prochaine station sur chaque ligne. Cela nous permettra de déterminer le temps de trajet le plus long entre deux stations pour chaque ligne de métro. Pour cela, utilisez la fonction MAX() et attribuez-lui l'alias max_time, en regroupant les données par la colonne line_name.

Instructions brèves

  • Récupérez la colonne line_name et la valeur maximale de la colonne time_to_next_station.
  • Ajoutez l'alias max_time pour la valeur maximale.
  • Regroupez les données par la colonne line_name.

Une fois cette tâche terminée, cliquez sur le bouton sous le code pour vérifier votre solution.

Solution

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 1
single

single

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Suggested prompts:

Can you explain more about aggregate functions in SQL?

How does the GROUP BY clause work with multiple columns?

Can you give more examples of using aliases in SQL queries?

close

Awesome!

Completion rate improved to 4

bookClause Group By

Glissez pour afficher le menu

Bienvenue dans le cours SQL Intermédiaire !

Dans la première section, nous allons explorer comment regrouper et agréger des données au sein de nos tables.

Comprenons ce que signifie "regrouper des données" à l'aide d'un exemple simple d'une table employees :

Regroupement des données

Nous avons pour objectif de déterminer le nombre d'employés dans chaque département. Pour cela, nous allons regrouper les données par la colonne department et utiliser une agrégation avec la fonction COUNT(*).

Voici à quoi ressemblera l'implémentation :

123
SELECT department, COUNT(*) AS number_of_employees FROM employees GROUP BY department
copy

Ainsi, comme vous pouvez le constater, la syntaxe pour regrouper des données est la suivante :

SELECT column1, AGG_FUNC(column2)
FROM table
GROUP BY column1

Remarque

AGG_FUNC désigne les fonctions d'agrégation telles que MAX, MIN, COUNT, etc.

Cette syntaxe permet de trouver certaines valeurs à l'aide de fonctions d'agrégation sur des colonnes spécifiques.

Prenons un autre exemple : on nous a demandé de trouver le département avec le salaire moyen le plus élevé.

Pour obtenir ces données, il faut regrouper les données par la colonne department puis utiliser la fonction AVG() pour calculer le salaire moyen :

123
SELECT department, AVG(salary) as average_salary FROM employees GROUP BY department
copy

Dans cette partie de la section, nous travaillerons avec la base de données du métro de Montréal, qui contient la table metro_travel_time.

Cette table contiendra des informations sur la ligne de station (line_name), son nom (station_name), et le temps nécessaire pour qu'un train parcourt d'une station à la suivante (time_to_next_station).

Voici à quoi ressemble cette table et un aperçu des données qu'elle contient :

Comme vous pouvez le constater, il ne s'agit pas d'une table complexe. Réfléchissons à la manière dont nous pouvons utiliser le regroupement ici.

L'option la plus évidente est le regroupement par couleur des lignes de métro. Cela signifie que nous pouvons agréger les données en les regroupant par couleur de la ligne de métro.

Alias

Dans les exercices, vous utiliserez souvent un concept appelé alias. Un alias est essentiellement un « surnom » donné à une colonne que vous récupérez avec une instruction SELECT. Il s'indique avec la syntaxe suivante :

SELECT column AS alias

Un alias n'affecte que la façon dont la colonne apparaît dans la réponse.

Par exemple, au lieu de MAX(time), la colonne pourrait être appelée max_time si vous lui attribuez cet alias. Cela rend le résultat plus lisible et clair.

Tâche

Swipe to start coding

Votre tâche consiste à trouver le temps le plus long jusqu'à la prochaine station sur chaque ligne. Cela nous permettra de déterminer le temps de trajet le plus long entre deux stations pour chaque ligne de métro. Pour cela, utilisez la fonction MAX() et attribuez-lui l'alias max_time, en regroupant les données par la colonne line_name.

Instructions brèves

  • Récupérez la colonne line_name et la valeur maximale de la colonne time_to_next_station.
  • Ajoutez l'alias max_time pour la valeur maximale.
  • Regroupez les données par la colonne line_name.

Une fois cette tâche terminée, cliquez sur le bouton sous le code pour vérifier votre solution.

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 !

close

Awesome!

Completion rate improved to 4
Section 1. Chapitre 1
single

single

some-alt