Bonjour,

J'ai 3 tables.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
commande: id_commande, id_client, ref_commande....../*comprend les infos et références de la commande.*/
commande_prod: id_commande_prod, id_commande, id_produit, tx_tva, prix_ht..../*comprend les produits et prix de commandes. (id_commande est utilisé pour la jointure)*/
piece_jointe: id_pj, id_comm, nom_fichier..../*peut contenir ou non des pièces jointes*/
Je cherche à afficher la somme totale par commande et afficher les pièces jointes ensembles si elles existent.

Mon code actuel
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
SELECT DISTINCT c.ref_commande, SUM(cd.prix_ht * (1+(cd.tx_tva/100))) as ttc, GROUP_CONCAT(DISTINCT pj.nom_fichier)AS fichier
FROM commande c
INNER JOIN commande_prod cd USING(id_commande)
LEFT JOIN piece_jointe pj ON c.id_commande=pj.id_comm
WHERE c.id_client=44
GROUP BY c.id_commande
Ça fonctionne presque. Mon problème est que la somme est calculée autant de fois qu'il y a de pièces jointes.

Une idée svp?