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 →

Programme du cours

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…

Programme 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
🔒

Fonctions date approfondies

Verrouillée

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

Programme 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
🔒

Fonctions numériques et NULL avancé

Verrouillée

→ 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…

Programme 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
🔒

CASE WHEN et agrégation conditionnelle

Verrouillée

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

Programme 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
🔒

CAST et vues approfondies

Verrouillée

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

Programme 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é
🔒

Regroupements avancés

Verrouillée

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

Programme 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
🔒

CTE récursive et structures avancées

Verrouillée

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

Programme 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
🔒

Mise en pratique : hôtellerie

Verrouillée

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

Programme 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
🔒

Mise en pratique : e-commerce

Verrouillée

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

Programme 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
🔒

Mise en pratique : ressources humaines

Verrouillée

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

Programme 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
  • ✓ Attestation de réussite vérifiable
  • ✓ Accès permanent une fois débloqué
🔒

Votre attestation

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

Accès complet

Les 3 premières leçons de ce module sont gratuites.

8 500 XOF / 12,96 € / 14,12 $

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