|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Inscription : août 2006 Messages : 44 ![]() |
Bonjour à tous,
je me casse la tête sur la requête suivante : J'ai une table ce_lqdj_pts avec les champs : lp_id (auto increment, primaire), lp_uid (id user), lp_pts (nombre de point par journée). Pour obtenir le nombre de points cumulés lors de la derniere journée et créer un classement, pas de soucis : Code :
$sql_pts = "SELECT lp_uid, SUM(lp_pts) AS pts_equipes FROM ce_lqdj_pts GROUP BY lp_uid ORDER BY pts_equipes DESC"; Code :
$sql_last_pts= "SELECT lp_id, lp_uid, SUM(lp_pts) AS pts_equipes FROM ce_lqdj_pts GROUP BY lp_uid HAVING NOT lp_id IN (SELECT MAX(lp_id) AS max_lpid FROM ce_lqdj_pts GROUP BY lp_uid) ORDER BY pts_equipes_ancien DESC"; Merci pour votre aide.
|
|
|
00
|
|
|
#2 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Utilise WHERE et non HAVING.
Par contre il serait plus sérieux de travailler avec des dates. |
|
|
00
|
|
|
#3 | ||
|
Membre Expert
![]() Inscription : avril 2006 Messages : 1 338 ![]() |
Code :
edit: +1 avec sabotage pr la structure de la table ...
__________________
Stay in Bed .. Save Energy |
||
|
|
00
|
|
|
#4 |
|
Candidat au titre de Membre du Club
![]() Inscription : août 2006 Messages : 44 ![]() |
Merci pour votre réponse.
Vous avez raison pour les dates, je n'y avez pas pensé ![]() Code :
$sql_pts_ancien = "SELECT lp_id,lp_uid,lp_date,SUM(lp_pts) AS pts_equipes_ancien FROM ce_lqdj_pts GROUP BY lp_uid HAVING lp_date < MAX(lp_date) ORDER BY pts_equipes_ancien DESC"; Vous voyez une soluce ? |
|
|
00
|
|
|
#5 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : août 2006 Messages : 44 ![]() |
On m'a proposé une réponse niquelle sur un autre forum, sans la date du jour et ça marche.
Merci pour votre aide ![]() Code :
|
||
|
|
00
|
|
|
#6 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Oui enfin la premiere réponse ici était déjà d'utiliser WHERE au lieu de HAVING mais tu n'en as pas tenu compte.
Ne pas utiliser les dates n'est pas un avantage. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com