Bonjour,
J'ai la solution à mon problème mais je me demande si c'est la bonne !
Je fais une jointure sur une table dont je souhaite additionner un total de ventes et un total d'offres souscrites.
Ma première intuition était de procéder ainsi car la table ventes contient plusieurs entrées et je ne souhaitais n'en ramener qu'une cumulée :
Je m'aperçois que le montant_total_n1 et nb_offres_n1 me ramènent "NULL"... comme un message caché pour me décrire !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 SELECT P.id, P.Commune_ref, P.Statut, montant_total_n1, nb_offres_n1 FROM partenaires P LEFT JOIN ( SELECT `idpartenaire`, SUM(montant) AS montant_total_n1, COUNT(offre) AS nb_offres_n1 FROM `ventes` ) AS table_montant_total_n1 ON P.id = table_montant_total_n1.idpartenaire WHERE `id` = 'identifiant'
Par contre :
Me ramènent effectivement les valeurs correctes cumulées.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 SELECT P.id, P.Commune_ref, P.Statut, SUM(montant) AS montant_total_n1, COUNT(offre) AS nb_offres_n1 FROM partenaires P LEFT JOIN ( SELECT `idpartenaire`, montant, offre FROM `ventes` ) AS table_montant_total_n1 ON P.id = table_montant_total_n1.idpartenaire WHERE `id` = 'identifiant'
Est-ce bien comme cela qu'il faut procéder ?
Merci d'avance pour vos conseils.







Répondre avec citation


N'oubliez pas le bouton
et pensez aux balises [code]


Partager