Requête SQL "défaillante"

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Requête SQL "défaillante"

Requête SQL "défaillante"

par Boueep » 01 févr. 2009, 19:29

Bonjour,

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.IQ
mon "count" me fait l'addition des résultats trouvés mais pas l'addition de la valeur "iterations"
Exemple :

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.IQ
Bien à vous.
Boueep