Regroupement de données

SQL intermédiaire avec l’IA

Jasmin Ludolf

Senior Data Science Content Developer

Regroupement de données

$$

  • Aperçus pour des groupes particuliers

$$

  • Combiner les lignes avec les mêmes valeurs

$$

  • Créer des résumés pour révéler des tendances

Collection de livres de langues

SQL intermédiaire avec l’IA

Distinct vs. groupes

SELECT DISTINCT language
FROM films;
|language|        
|--------|
|Danish  |
|Greek   |
|Dzongkha|
|...     |
  • Valeurs uniques
  • Quelles langues avons-nous ?
SELECT language
FROM films
GROUP BY language;
|language|        
|--------|
|Danish  |
|Greek   |
|Dzongkha|
|...     |
  • Crée des groupes
  • Combien de films avons-nous dans chaque langue ?
SQL intermédiaire avec l’IA

Invites pour le regroupement

Invite : Regrouper les films par langue

SELECT language, COUNT(*) AS lang_count
FROM films
GROUP BY language;
|language|lang_count|
|--------|----------|
|        |11        |
|Arabic  |5         |
|Kannada |1         |
|Czech   |1         |
...

$$

  • Le regroupement est courant avec les statistiques de synthèse :
    • par ex. comptage, moyennes

$$

  • Pas de demande spécifique -> COUNT()
    • Fonction d'agrégation
    • Résume plusieurs lignes en une seule valeur
SQL intermédiaire avec l’IA

Erreurs courantes de regroupement

Invite : Afficher tous les titres de films regroupés par langue

SELECT title
FROM films
GROUP BY language;
column "films.title" must appear in the
GROUP BY clause or be used in an 
aggregate function LINE 1...

Corrections AI :

  • Ajout d'une fonction COUNT()
    SELECT language, COUNT(title) AS count
    FROM films
    GROUP BY language;
    
  • Sélection des champs corrects
    SELECT title, language
    FROM films
    GROUP BY title, language;
    
SQL intermédiaire avec l’IA

Invites de regroupement

Invite : Compter les films par pays et langue

SELECT country, language, COUNT(*) AS film_count
FROM films
GROUP BY country, language;
|country           |language|film_count|
|------------------|--------|----------|
|                  |        |1         |
|Pakistan          |Urdu    |1         |
|Mexico            |English |3         |
|Dominican Republic|Spanish |1         |
...
SQL intermédiaire avec l’IA

Regroupement et tri

Invite : Classer les langues par nombre de films, en affichant les 3 premiers

SELECT language, COUNT(*) AS film_count
FROM films
GROUP BY language
ORDER BY film_count DESC
LIMIT 3;
|language|film_count|
|--------|----------|
|English |4635      |
|French  |72        |
|Spanish |40        |
SQL intermédiaire avec l’IA

Passons à la pratique !

SQL intermédiaire avec l’IA

Preparing Video For Download...