PaliSkill
← Retour au catalogue
Avancé~16.5h90 leçons

SQL avancé

Fonctions texte, date et numériques, valeurs nulles, CASE WHEN, vues et analyse exploratoire de données

Objectif pédagogique

À la fin de ce module, vous saurez utiliser les fonctions texte, date et numériques avancées, gérer les valeurs nulles, construire des CASE WHEN et des vues, et mener une analyse exploratoire de données avec des CTE récursives.

Commencer le module →

Chapitres

1

Fonctions texte approfondies

Disponible
0/9

Comme en Python ou en Excel, SQL propose des fonctions pour manipuler du texte : changer la casse, mesurer une longueur, ou assemb…

Voir les détails du chapitre
  • Fonctions texte (1/2) : casse et longueur
  • Fonctions texte (2/2) : nettoyer et extraire
  • CONCAT() : assembler du texte en toute sécurité
  • POSITION : localiser une sous-chaîne
  • LPAD et RPAD : aligner du texte
  • STRING_AGG : concaténer les valeurs d'un groupe
  • SIMILAR TO : motifs de texte avancés
  • Combiner plusieurs fonctions texte
  • Cas pratique : rapport de noms normalisés par statut
2

Fonctions date approfondies

Disponible
0/9

Les dates suivent aussi des fonctions dédiées, même si leur syntaxe exacte varie selon le moteur SQL (, standard SQL, utilisé ici…

Voir les détails du chapitre
  • Fonctions date
  • DATE_TRUNC : arrondir à une unité de temps
  • Premier et dernier jour du mois
  • Jour de la semaine : EXTRACT(DOW)
  • Formater une date pour l'affichage : TO_CHAR
  • Arithmétique d'intervalles : INTERVAL
  • Différence précise en mois et en années : AGE()
  • Combiner DATE_TRUNC et agrégation
  • Cas pratique : les inscriptions du mardi
3

Fonctions numériques et NULL avancé

Disponible
0/9

→ 120.5 (montant vaut 120.456 ; le chiffre après la 1ère décimale, 5, fait arrondir vers le haut). → 150 (montant vaut 150, un rem…

Voir les détails du chapitre
  • Fonctions numériques : ROUND, ABS
  • Gestion des valeurs nulles : COALESCE, IS NULL
  • CEIL et FLOOR : arrondi vers le haut ou vers le bas
  • MOD, POWER et SQRT
  • GREATEST et LEAST
  • NULLIF
  • IS DISTINCT FROM : comparer en toute sécurité avec NULL
  • STDDEV et VARIANCE
  • Cas pratique : un rapport tolérant aux valeurs extrêmes et manquantes
4

CASE WHEN et agrégation conditionnelle

Disponible
0/9

évalue les conditions dans l'ordre, et renvoie la valeur associée à la première condition vraie ; couvre tous les cas restants. Av…

Voir les détails du chapitre
  • Transformation conditionnelle : CASE WHEN
  • CASE simple vs CASE recherché
  • CASE imbriqué
  • Agrégation conditionnelle : SUM(CASE WHEN…)
  • Construire un tableau croisé simple avec CASE
  • La clause FILTER : une alternative à CASE dans un agrégat
  • CASE dans ORDER BY : un tri personnalisé
  • Combiner CASE et sous-requête
  • Cas pratique : un rapport à trois catégories
5

CAST et vues approfondies

Disponible
0/9

→ 120 (montant vaut 120.456 ; le comportement exact sur une valeur décimale — arrondi ou troncature — peut varier légèrement selon…

Voir les détails du chapitre
  • Changement de type : CAST / CONVERT
  • Les vues : CREATE VIEW
  • CREATE OR REPLACE VIEW
  • DROP VIEW
  • Une vue basée sur une jointure
  • Les limites d'une vue avec agrégation
  • Vue matérialisée : principe
  • Rafraîchir une vue matérialisée
  • Cas pratique : un rapport d'achats filtré et casté
6

Regroupements avancés

Disponible
0/9

→ 2 valeurs distinctes : 'actif', 'inactif'. → 6 (le nombre total de lignes, doublon inclus). → 1 groupe : Emma / emma@mail.com (l…

Voir les détails du chapitre
  • Analyse exploratoire (1/2) : DISTINCT, compter, doublons
  • Analyse exploratoire (2/2) : explorer une répartition
  • GROUPING SETS : plusieurs regroupements en une requête
  • ROLLUP : sous-totaux hiérarchiques
  • CUBE : toutes les combinaisons de regroupement
  • La fonction GROUPING() : distinguer un sous-total d'un NULL réel
  • Comparer GROUPING SETS, ROLLUP et CUBE
  • HAVING avec les regroupements avancés
  • Cas pratique final : exploration + transformation combinées
7

CTE récursive et structures avancées

Disponible
0/9

Une CTE récursive s'appelle ellemême, pour parcourir une hiérarchie sur un nombre de niveaux inconnu à l'avance — impossible avec…

Voir les détails du chapitre
  • WITH RECURSIVE : principe et syntaxe
  • Condition d'arrêt : éviter une boucle infinie
  • Cas d'usage : retrouver tous les descendants d'une catégorie
  • Calculer un niveau de profondeur
  • Introduction au type JSON
  • Extraire une valeur JSON avec -> et ->>
  • ARRAY : stocker et interroger un tableau de valeurs
  • ARRAY_AGG et UNNEST
  • Cas pratique : compter les descendants de chaque racine
8

Mise en pratique : hôtellerie

Disponible
0/9

Ce chapitre introduit un nouveau scénario : un petit hôtel, avec deux tables indépendantes. Les prix () et les revenus calculés da…

Voir les détails du chapitre
  • Les tables chambres et réservations
  • CTE : chiffre d'affaires par mois
  • ROLLUP : revenu par type de chambre
  • CASE : compter les réservations par statut
  • Vue : réservations actives
  • Gérer un commentaire optionnel avec COALESCE
  • STRING_AGG : chambres réservées par mois
  • Vue matérialisée : un rapport mensuel figé
  • Cas pratique de synthèse : tableau de bord hôtelier
9

Mise en pratique : e-commerce

Disponible
0/9

Ce chapitre introduit un nouveau scénario : une boutique en ligne, avec deux tables indépendantes. Les prix () de ce chapitre sont…

Voir les détails du chapitre
  • Les tables articles et avis
  • CTE : note moyenne par article
  • STRING_AGG : commentaires par article
  • COALESCE : afficher les avis sans commentaire
  • CASE : classer les avis par ressenti
  • ROLLUP : nombre d'avis par catégorie d'article
  • ARRAY_AGG : les clients ayant noté un article
  • Vue : avis détaillés avec article
  • Cas pratique de synthèse : tableau de bord des avis
10

Mise en pratique : ressources humaines

Disponible
0/9

Dernier scénario du module : un organigramme d'entreprise, sur une seule table hiérarchique. référence dans cette même table : cha…

Voir les détails du chapitre
  • La table collaborateurs
  • CTE récursive : l'organigramme complet
  • Cas d'usage : tous les subordonnés d'un manager
  • CASE : classer les collaborateurs par tranche de salaire
  • ROLLUP : masse salariale par niveau hiérarchique
  • STRING_AGG : les subordonnés directs de chaque manager
  • Vue : organigramme avec noms de manager
  • JSON : des compétences flexibles par collaborateur
  • Cas pratique final du module : tableau de bord RH par niveau

Progression du module

0/90 terminées

Ce module inclut

  • 90 leçons · durée estimée ~16.5h
  • 193 exercices pratiques corrigés
  • Quiz de révision par chapitre
  • Quiz de fin de module
  • Certificat de réussite vérifiable
  • Accès permanent une fois débloqué
🔒

Votre certificat

Terminez ce module pour débloquer votre certification vérifiable.

Accès complet

La première leçon de chaque chapitre est gratuite (10 leçons sur 90).

2 500 XOF / 3,81 € / 4,15 $

Débloquez les 80 leçons restantes de ce module