Tabelka

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


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


@update

Udało się smile.gif
  1. SELECT
  2. p.idPlay, p.idUser,
  3. (
  4. SELECT p2.playTime
  5. FROM play AS p2
  6. WHERE p.idUser = p2.idUser
  7. ORDER BY p2.playTime ASC , p2.move ASC
  8. LIMIT 1
  9. ) AS playTime,
  10. (
  11. SELECT p2.move
  12. FROM play AS p2
  13. WHERE p.idUser = p2.idUser
  14. ORDER BY p2.playTime ASC , p2.move ASC
  15. LIMIT 1
  16. ) AS move
  17. FROM
  18. play AS p
  19. GROUP
  20. BY p.idUser


Da się jakoś prościej?