Retour à la leçonMission
Mission : un rapport clients qui fait disparaître les clients sans commande
Diagnostiquer pourquoi un rapport utilisant join() omet des clients, puis corriger avec outerjoin().
Contexte
Un rapport de vente exécute select(Client.nom, func.count(Commande.id)).join(Commande, Commande.client_id == Client.id).group_by(Client.id) pour compter les commandes par client. Le service commercial signale que plusieurs clients récemment créés, qui n'ont encore jamais commandé, n'apparaissent jamais dans ce rapport, alors qu'ils devraient s'afficher avec un compte de zéro.