Requête SUM / Group By (problème)

  • Auteur de la discussion Kyle_Katarn
  • Date de début

Kyle_Katarn

Grand Maître
Bonjour,

Lorsque je fais la requête :

PHP:
$qst = "SELECT `recdate`, COUNT(*), SUM(`proposed`), SUM(`ok`) FROM stats GROUP BY `recdate` ORDER BY `recdate` DESC LIMIT 10;";



Le champ de la 3ème colonne est plus élevé que la seconde (idem 4ème champ) sachant que :
- recdate est de type DATE
- proposed et ok sont des ENUM('0', '1')


En fait je voudrais avoir le nombre de "proposed" et de "OK" synthétisés par jour pour les au plus 10 derniers jours et il me semble que ma requête est bien formattée pour cela... une idée ?

Merci
 

zeb

Modérateur
Salut,

il me semble que ma requête est bien formattée pour cela
Euh, non. Pas du tout.

Première erreur, les sommes sont calculées sur des entiers. '0' et '1' ne sont pas des nombres. 0 et 1 le sont.
Seconde erreur, LIMIT renvoie les N premières lignes, après calcul.

SQL:
SELECT SUM(ok) FROM stats WHERE ok = '0'
Regarde bien cette requête et devine ce qu'elle va renvoyer.
Exécute-la...

Des idées ? Oui, j'en ai quelques unes. Je te les propose tout de suite ou j'attends que tu prennes en compte ces quelques remarques ?
 

Kyle_Katarn

Grand Maître
Passé en TINYINT et visiblement c'est bon... puis je savoir ce que tu suggérais de plus ? En quoi l'ORDER BY ne devrait-il pas marcher pour ne prendre que ls 10 derniers jours ??? Merci d'avance !!!
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 128
Messages
6 717 846
Membres
1 586 373
Dernier membre
https://forum.tomshardwar
Partager cette page
Haut