Requete SQL Max

volumeni -  
 volumeni -
Bonjour,
Alors je vais essayer d'etre clair.

J'ai une table USERS qui contient USERNAME, CREDITS, et ONLINE.
ONLINE est la date de la dernière connexion.

j'ai fait =
$lastconnect = mysql_query("SELECT username, credits, online FROM users ORDER BY `online` DESC LIMIT 5;");

ce qui me donne les 5 dernières personnes qui se sont connectées.

baloo736 - 40 points
Last connect -25 mins, -20 secs.
cris - 409 points
Last connect -1 heures, -31 mins, -48 secs.
poueet - 190 points
Last connect -6 heures, -25 mins, -22 secs.
malicia - 339 points
Last connect -6 heures, -42 mins, -19 secs.

Mais j'aimerais que ces 5 personnes ne soient pas classées par date de connexion,
mais celui qui a le PLUS de points en 1er.

le problème c'est que si je remplace ORDER BY `online`par ORDER BY `credits`, plus rien ne marche...
A voir également:

2 réponses

Le concombre frigorifié
 
Salut

je connais mal MySQL mais c'est très certainement ton LIMIT 5 qui renvoie les 5 premières lignes de ton résultat... et comme ton résultat était trié par date de connexion.

tu peux essayer un truc (je te garantis pas que ça fonctionne) :
Select *
from (
  select username, credits, online
  from users
  order by online desc limit 5
  ) t1
order by credits desc

nb: dans certains systèmes, le T1 est obligatoire. Si en MySQL ça fonctionne et que ce n'est pas obligatoire, ne l'y laisse pas traîner
0
volumeni
 
hey ca marche, merci
0