idPlay | idUser | playTime | move | insertDate
Kod
1 1 3 8 2011-08-07 00:00:00
2 1 2 4 2011-08-07 12:11:20
3 1 2 3 2011-08-07 12:16:52
4 2 14 20 2011-08-07 12:27:58
2 1 2 4 2011-08-07 12:11:20
3 1 2 3 2011-08-07 12:16:52
4 2 14 20 2011-08-07 12:27:58
Potrzebuje pobrać najlepszy rekord dla każdego z użytkowników - a ogólniej po prostu ranking.
Najlepszy rekord tj. taki gdzie playTime jest najmniejsze, jeśli jest kilka takich rekordów (o takim samym najmniejszym playTime) to wybieramy z nich ten który ma najmniejszą licze move.
Czyli chciałbym dostać
Kod
3 1 2 3 2011-08-07 12:16:52
4 2 14 20 2011-08-07 12:27:58
4 2 14 20 2011-08-07 12:27:58
@update
Udało się
SELECT p.idPlay, p.idUser, ( SELECT p2.playTime FROM play AS p2 WHERE p.idUser = p2.idUser ORDER BY p2.playTime ASC , p2.move ASC LIMIT 1 ) AS playTime, ( SELECT p2.move FROM play AS p2 WHERE p.idUser = p2.idUser ORDER BY p2.playTime ASC , p2.move ASC LIMIT 1 ) AS move FROM play AS p GROUP BY p.idUser
Da się jakoś prościej?