Manipulez une base de données avec SQL pour suivre la satisfaction client
SportDataPulse, club professionnel de Ligue 1. Le directeur sportif veut identifier une shortlist d’attaquants finisseurs à recruter avec un salaire annuel maximum de 3 M€. Le travail couvre la modélisation d’une base relationnelle, la création et le chargement de la base SQLite, les requêtes SQL métier (11 questions client) et une analyse complémentaire avec scoring pour la recommandation de recrutement.
Approche en trois temps : structuration des données, exploitation SQL puis recommandation argumentée (double scoring). Construction d’un score finisseur (normalisation par 90 minutes, npxG, delta réel vs attendu) et un score de rentabilité (coût par but, coût par xG). Score final pondéré 60/40. Gestion des valeurs manquantes sans pénalisation : le poids du KPI absent est retiré du total de pondération.
- Expression des besoins PDF
- Présentation PPTX : dictionnaire, schéma, base chargée, requêtes SQL, score finisseur, score rentabilité, shortlist 10 attaquants, limites
- Base SQLite démontrée en live lors de la soutenance
- Double scoring : score finisseur (60%) + score rentabilité (40%) avec gestion des valeurs manquantes
- SQL avancé : CTE, vues SQL, PERCENT_RANK, sous-requêtes, CASE WHEN, NULLIF, COALESCE
- Shortlist 10 attaquants avec 3 lectures : performance pure (Mika Biereth 88 461€/but), rentabilité (Esteban Lepaul 30 000€/but), profil équilibré (Lucas Stassin)
- Démonstration live de la base en soutenance
Problème : Méconnaissance totale du football et de ses KPIs analytiques.
Résolution : Cours accéléré sur les différents KPIs via sites spécialisés et LLM pour comprendre npxG, TS%, et les métriques de finition avant de modéliser.
Problème : Comparer des joueurs avec des temps de jeu très différents.
Résolution : Passage systématique en valeurs par 90 minutes avant tout scoring.
Problème : KPIs manquants — attribuer zéro pénalise injustement un joueur pour une donnée absente.
Résolution : Retrait du poids du KPI manquant du total de pondération.
Techniques
- SQL avancé : CTE, vues, PERCENT_RANK, sous-requêtes, CASE WHEN
- SQLite : création, chargement, import CSV, contrôles de cohérence
- Modélisation relationnelle : schéma, dictionnaire, clés
- Scoring multi-critères : normalisation, pondération, valeurs manquantes
Soft skills
- Reformulation du besoin client avant tout développement
- Recul analytique : limites du modèle assumées en soutenance
- Restitution à un directeur non-technicien
Comme pour le projet 2, c’est la découverte d’un nouvel environnement. Ne rien connaître au football et devoir construire des KPIs maison pour scorer des joueurs à partir des indicateurs fournis, c’est exactement le type de défi que j’apprécie.
Je l’ai en partie fait au travers de la vidéo de formation et de la documentation demandées par Aéroworld dans le projet 11 — ce dataset a été recyclé via Power BI pour avoir une vraie dataViz actionnable. Ce qui pourrait être fait en plus : ajouter des données année par année pour avoir une base temporelle d’évolution sur 5 à 10 saisons.