je fais une requête qui marche plus ou moins bien
plus pour "elle fait ce que je lui demande"
moins pour "à un détail près"
la voici :
Code : Tout sélectionner
SELECT co.source, co.IQ, co.techno, count( iterations ) nb_iterations
FROM activite AS ac RIGHT OUTER JOIN correspondance AS co ON co.IQ = ac.IQ
AND co.source = ac.source
AND ac.retard = '00:00:00'
AND ac.date_envoi >= STR_TO_DATE('".addslashes($periode_debut)."', '%d/%m/%Y')
AND ac.date_envoi <= STR_TO_DATE('".addslashes($periode_fin)."', '%d/%m/%Y')
GROUP BY co.source, co.IQ
ORDER BY co.source, co.IQExemple :
Pour 3 entrées à 7, 12 et 27 itérations, j'obtiens un résultat de :
1 ligne correspondant à la dite entrée avec 3 itérations au lieu de 42 attendues.
Si quelqu'un avait une idée d'où peut provenir mon erreur, je lui en serait très reconnaissant.
Par avance merci de votre aide.
A bientôt.
Boueep
edit : problème résolu ....
Il m'aura fallut faire un SUM plutôt qu'un COUNT.
Si ça peut servir à quelqu'un
Voici ce que ça donne :
Code : Tout sélectionner
SELECT co.source, co.IQ, co.techno, SUM( iterations ) nb_iterations
FROM activite AS ac
RIGHT OUTER JOIN correspondance AS co ON co.IQ = ac.IQ
AND co.source = ac.source
AND ac.retard <> '00:00:00'
AND ac.date_envoi >= STR_TO_DATE('".addslashes($periode_debut)."', '%d/%m/%Y')
AND ac.date_envoi <= STR_TO_DATE('".addslashes($periode_fin)."', '%d/%m/%Y')
GROUP BY co.source, co.IQ
ORDER BY co.source, co.IQBoueep