Description
Structurer des requêtes complexes et produire des analyses avancées en autonomie. Cette formation vous permet de franchir un cap en autonomie : produire des analyses complexes, structurer vos requêtes longues, exploiter les fonctions analytiques modernes du langage SQL et résoudre les besoins métier que les requêtes simples ne permettent pas de couvrir. Le programme est conçu spécifiquement pour des publics non techniques ayant déjà acquis les fondamentaux SQL et amenés à pratiquer le langage dans leur quotidien professionnel. L'approche reste résolument orientée usage métier : chaque concept est illustré sur des cas concrets de reporting, d'analyse commerciale, de pilotage RH ou de suivi opérationnel.
Objectifs pédagogiques
- Structurer des requêtes complexes en plusieurs étapes avec les CTE
- Utiliser les sous-requêtes et savoir choisir entre sous-requête, jointure et CTE
- Exploiter les fonctions de fenêtrage pour produire des classements, comparaisons et calculs par groupe
- Construire des indicateurs avancés avec CASE WHEN et des agrégations conditionnelles
- Produire des analyses de type tableau croisé en tenant compte des différences entre SGBD
- Identifier les causes fréquentes de lenteur d'une requête et dialoguer efficacement avec les équipes techniques
- Structurer, commenter et maintenir des requêtes longues dans un contexte d'équipe
- Construire en autonomie une requête analytique complète à partir d'un besoin métier
Public concerné
Prérequis
Déroulé du programme
Jour 1 / Consolidation des acquis, sous-requêtes et CTE (7h)
Séquence 1 / Rappels structurants et reprise des fondamentaux (1h30)
• Rappel ciblé sur la structure d'une base relationnelle, les types de données et la lecture d'un schéma
• Rappel sur SELECT, WHERE, ORDER BY, jointures simples, fonctions d'agrégation et GROUP BY
• Diagnostic des points de progression sur cas pratiques de niveau intermédiaire
• Bonnes pratiques d'écriture : indentation, alias, commentaires, lisibilité d'une requête longue
Séquence 2 / Sous-requêtes : approfondissement et choix de structure (2h30)
• Rappel sur le principe d'une sous-requête et ses cas d'usage métier
• Sous-requêtes scalaires : retourner une valeur unique, usage dans SELECT et WHERE
• Sous-requêtes liste : IN, NOT IN, EXISTS, NOT EXISTS, différences et points de vigilance
• Sous-requêtes corrélées : principe, cas d'usage métier, lecture d'une requête corrélée existante
• Sous-requêtes dans FROM : tables dérivées, résultats intermédiaires
• Quand utiliser une jointure plutôt qu'une sous-requête, et inversement
• Éviter les résultats faux à cause des doublons : vérifier progressivement une requête complexe
Séquence 3 / CTE - Common Table Expressions (3h)
• Pourquoi utiliser une CTE : lisibilité, réutilisation, structuration d'une requête longue
• Syntaxe WITH ... AS : créer et nommer une CTE
• CTE en cascade : enchaîner plusieurs CTE dans une même requête
• CTE vs sous-requête dans FROM : quand utiliser l'une ou l'autre
• CTE récursives : principe général et cas d'usage, en ouverture sur les hiérarchies et arborescences
• Méthodologie de construction d'une requête longue par étapes avec validation intermédiaire
• Approfondi en TP : refactoriser une requête complexe avec des CTE
Jour 2 / Fonctions de fenêtrage et analyses avancées (7h)
Séquence 4 / Introduction aux fonctions de fenêtrage (2h)
• Pourquoi les fonctions de fenêtrage transforment la capacité d'analyse
• La clause OVER : principe et syntaxe
• PARTITION BY : créer des groupes d'analyse
• ORDER BY dans une fenêtre : ordonner les calculs
• Différence fondamentale entre GROUP BY et OVER
Séquence 5 / Fonctions de classement et de rang (2h)
• ROW_NUMBER : numérotation séquentielle
• RANK et DENSE_RANK : classements avec et sans égalités
• NTILE : découper en groupes d'effectifs comparables
• Cas d'usage métier : top N par catégorie, classement commercial, identification des doublons
• Approfondi en TP : construire un classement multi-critères
Séquence 6 / Fonctions analytiques et de décalage (1h30)
• LAG et LEAD : comparer une ligne à la précédente ou à la suivante
• FIRST_VALUE et LAST_VALUE : récupérer les valeurs extrêmes d'une fenêtre
• Calculs glissants : moyennes mobiles, cumuls progressifs
• Cas d'usage métier : évolution mensuelle, variation N vs N-1, comparaisons temporelles
Séquence 7 / Agrégats par fenêtre (1h30)
• SUM, AVG, COUNT, MIN, MAX avec OVER : agréger sans grouper
• Combiner agrégats par fenêtre et données détaillées dans une même requête
• Cas d'usage métier : pourcentage par rapport à un total, écart à la moyenne du groupe
• Approfondi en TP : construire un tableau de bord SQL avec parts et écarts
Jour 3 / Tableaux croisés, performance et mise en autonomie (7h)
Séquence 8 / Tableaux croisés et requêtes conditionnelles (2h)
• Transformations lignes / colonnes pour le reporting : agrégations conditionnelles avec CASE WHEN
• Panorama des syntaxes PIVOT et UNPIVOT selon les SGBD (SQL Server, Oracle, alternatives PostgreSQL et MySQL)
• CASE WHEN avancé : conditions imbriquées, valeurs calculées, indicateurs personnalisés
• Cas d'usage métier : tableaux croisés dynamiques en SQL, KPI personnalisés
• Approfondi en TP : produire un reporting croisé sur un cas commercial
Séquence 9 / Performance et dialogue avec les équipes techniques (1h30)
• Pourquoi une requête peut être lente : volumétrie, jointures mal maîtrisées, filtres non sélectifs, sous-requêtes répétées, fonctions appliquées sur des colonnes filtrées
• Lecture très simplifiée d'un plan d'exécution
• Bonnes pratiques de performance accessibles aux profils métier
• Identifier les causes fréquentes de lenteur d'une requête et formuler un diagnostic simple
• Quand et comment dialoguer avec l'équipe technique : signaux d'alerte, formulation utile, demandes pertinentes
Séquence 10 / Réutiliser et sécuriser ses requêtes (1h30)
• Différence entre requête, CTE et vue
• Lire et exploiter une vue existante
• Comprendre le principe d'une vue matérialisée
• Savoir quand demander la création d'une vue à l'équipe technique
• Panorama des procédures stockées et fonctions existantes, uniquement en lecture
• Sensibilisation aux opérations d'écriture (20 min) : différence entre lire et modifier une base, droits d'accès, précautions, transactions en simple évocation
Séquence 11 / Mise en pratique autonome et cas intégrateur (2h)
• Méthodologie de construction d'une requête complexe : décomposer le besoin, identifier les CTE nécessaires, structurer le résultat
• Cas pratique intégrateur : chaque participant reçoit un énoncé métier complexe (par exemple: analyse de performance commerciale multi-niveaux avec classements et comparaisons temporelles) et construit sa requête en autonomie
• Correction collective et échanges sur les usages SQL dans les outils des participants (Power BI, Excel, outils de reporting interne)
• Plan d'action individuel : chaque participant identifie les nouvelles techniques qu'il va mettre en œuvre immédiatement dans son contexte de travail
Informations
Durée
3 jour(s)
21h
Sur demande
Formations similaires
Migration vers le Cloud
Sur demande
Agents IA — Concevoir des systèmes autonomes avec LangChain et LangGraph - Avancé
Sur demande
AI Act européen — Comprendre vos obligations et vous mettre en conformité - Niveau débutant
Sur demande
Analyse bayésienne (4-107)
Sur demande