Leçons publiées sans module
40 leçon(s) · 3h 20min
- 1
Introduction aux bases de données relationnelles
Comprendre tables, lignes, colonnes, clés, relations et grain avant d'écrire des requêtes fiables.
Estimation · 5 min · easy+80 XP - 2
Environnement SQL : SQLite, PostgreSQL et inspection de schéma
Installer un environnement léger, ouvrir une base, explorer les tables et documenter le schéma avant de requêter.
Estimation · 5 min · easy+100 XP - 3
SELECT & FROM : lire une table proprement
Lire uniquement les colonnes utiles, nommer les sorties et éviter le réflexe SELECT *.
Estimation · 5 min · easy+85 XP - 4
WHERE : filtrer sans changer le grain
Écrire des filtres reproductibles, gérer NULL et combiner les conditions sans ambiguïté.
Estimation · 5 min · easy+90 XP - 5
ORDER BY & LIMIT : résultats stables
Trier, limiter et paginer un résultat avec un ordre déterministe.
Estimation · 5 min · easy+85 XP - 6
Fonctions d'agrégation : COUNT, SUM, AVG, MIN, MAX
Calculer des métriques correctes en distinguant lignes, valeurs non NULL et conventions métier.
Estimation · 5 min · medium+95 XP - 7
GROUP BY : agréger au bon grain
Utiliser GROUP BY, HAVING et les alias sans mélanger les grains.
Estimation · 5 min · medium+95 XP - 8
HAVING : filtrer après agrégation
Comprendre la différence entre WHERE et HAVING pour filtrer les lignes avant agrégation ou les groupes après agrégation.
Estimation · 5 min · medium+100 XP - 9
Agrégations analytiques et grain de mesure
Produire des KPI analytiques sans confondre commande, ligne de commande et client.
Estimation · 5 min · medium+105 XP - 10
Window functions : OVER, PARTITION BY et classements
Utiliser ROW_NUMBER, RANK, SUM OVER et PARTITION BY pour analyser sans réduire le nombre de lignes.
Estimation · 5 min · hard+120 XP - 11
INSERT INTO : créer sans casser le schéma
Insérer des données en nommant les colonnes et en respectant les contraintes.
Estimation · 5 min · medium+95 XP - 12
INSERT robuste et idempotence
Rendre les insertions robustes face aux relectures, doublons et flux concurrents.
Estimation · 5 min · medium+105 XP - 13
UPDATE : modifier avec garde-fous
Modifier une table avec WHERE, prévisualisation et contrôle de périmètre.
Estimation · 5 min · medium+95 XP - 14
UPDATE sûr : périmètre, état et audit
Encadrer les updates sensibles avec état courant, version, audit et comptage préalable.
Estimation · 5 min · medium+100 XP - 15
DELETE : supprimer avec preuves et limites
Supprimer des lignes uniquement quand le périmètre, l'audit et la réversibilité sont maîtrisés.
Estimation · 5 min · medium+95 XP - 16
DELETE, rétention et soft delete
Choisir entre suppression physique, soft delete, anonymisation et rétention réglementaire.
Estimation · 5 min · medium+100 XP - 17
Transactions : COMMIT, ROLLBACK, isolation et concurrence
Encadrer les écritures sensibles avec BEGIN, COMMIT, ROLLBACK et comprendre les risques de concurrence.
Estimation · 5 min · hard+120 XP - 18
Clés primaires et étrangères
Définir l'identité, l'unicité et l'intégrité référentielle d'un modèle relationnel.
Estimation · 5 min · medium+95 XP - 19
Contraintes, normalisation et invariants
Utiliser NOT NULL, UNIQUE, CHECK, FK et normalisation pour protéger les invariants.
Estimation · 5 min · medium+105 XP - 20
Modélisation relationnelle avancée
Modéliser un cas e-commerce avec tables de faits, dimensions, cardinalités et contraintes.
Estimation · 5 min · medium+105 XP - 21
Types SQL, dates, NULL et conversions
Choisir les types adaptés, filtrer les dates sans piège et comprendre la logique à trois valeurs de NULL.
Estimation · 5 min · medium+100 XP - 22
DDL : CREATE, ALTER, DROP et changements de schéma
Créer ou faire évoluer une table sans casser les consommateurs, avec migration, rollback et communication.
Estimation · 5 min · medium+100 XP - 23
JOIN : relier les tables sans perdre le grain
Choisir INNER, LEFT et anti-join selon la question métier et le grain de sortie.
Estimation · 5 min · medium+100 XP - 24
Jointures avancées : fan-out et anti-join
Diagnostiquer le fan-out, écrire des anti-joins et éviter les doublons invisibles.
Estimation · 5 min · hard+110 XP - 25
Sous-requêtes : IN, EXISTS et requêtes corrélées
Utiliser les sous-requêtes pour exprimer une condition d'existence, éviter les doublons et écrire des anti-joins.
Estimation · 5 min · hard+120 XP - 26
CTE avec WITH : lisibilité, étapes et réutilisation
Découper une requête complexe en étapes nommées avec WITH sans perdre la traçabilité du grain.
Estimation · 5 min · medium+100 XP - 27
Index et performance
Comprendre quand un index aide, quand il coûte et comment le justifier par une requête.
Estimation · 5 min · medium+95 XP - 28
EXPLAIN et stratégie d'index
Lire un plan EXPLAIN, relier index et requête observée, éviter les index cosmétiques.
Estimation · 5 min · hard+110 XP - 29
Pagination déterministe et curseurs
Remplacer les offsets profonds par une pagination stable fondée sur un curseur.
Estimation · 5 min · medium+100 XP - 30
Optimiser une requête sans cargo cult
Diagnostiquer une requête lente avec hypothèse, mesure, index pertinent et preuve avant/après.
Estimation · 5 min · hard+120 XP - 31
Vues, vues matérialisées et pré-agrégats
Créer des vues pour stabiliser une logique métier et comprendre quand matérialiser un résultat.
Estimation · 5 min · medium+100 XP - 32
SELECT avancé : expressions, CASE et COALESCE
Créer des colonnes calculées, segmenter avec CASE et rendre les exports lisibles.
Estimation · 5 min · medium+100 XP - 33
Filtres avancés : NULL, IN, BETWEEN, LIKE
Filtrer proprement les périodes, les valeurs absentes et les conditions composées.
Estimation · 5 min · medium+100 XP - 34
SQL + Python : sqlite3, SQLAlchemy et pandas
Lire et écrire des données depuis Python, paramétrer les requêtes et éviter l'injection SQL.
Estimation · 5 min · medium+100 XP - 35
Qualité de données et tests SQL
Transformer les invariants métier en tests SQL : unicité, non-nullité, relations, bornes et fraîcheur.
Estimation · 5 min · medium+100 XP - 36
dbt : modèles SQL, sources, tests et documentation
Comprendre l'analytics engineering avec dbt : modèles SELECT, dépendances, tests et documentation.
Estimation · 5 min · medium+100 XP - 37
Sécurité SQL : injection, secrets et permissions
Écrire des requêtes paramétrées, limiter les droits et protéger secrets, PII et opérations destructives.
Estimation · 5 min · hard+120 XP - 38
Backups, migrations et gouvernance des changements
Préparer les migrations, sauvegardes, restaurations et plans de rollback avant une modification risquée.
Estimation · 5 min · hard+120 XP - 39
Patterns d'entretien SQL et communication de solution
Résoudre un cas SQL en expliquant grain, hypothèses, requête, validations et limites.
Estimation · 5 min · medium+100 XP - 40
Capstone SQL : base e-commerce auditable
Concevoir, requêter, auditer et défendre une base e-commerce complète.
Estimation · 5 min · hard+150 XP