Kako formulirati sql query

imam hiscore tablicu koja ovako izgleda

id - auto increse
user_id - int
rezultat - int

svaki puta kad user odigra igru zapise se njegov ID i njegov rezultat. E sad ja imam tablicu punu tih upisa i ono što sad trebam ispisati je:

uzmi najbolji rezultat svakog usera (manje je bolje) i ispiši usera i njegov najbolji rezultat sortirano naravno po najboljem rezultatu.

Znači za primjer ovako je to u mojoj tablici

id | user_id | rezultat
1 | 1 | 5
2 | 1 | 3
3 | 1 | 8
4 | 2 | 2
5 | 2 | 14
6 | 3 | 8
7 | 3 | 10

A ja trebam dobiti ovo:

user_id | rezultat
2 | 2
1 | 3
3 | 8

Molim vas može li mi netko pomoći, jer ja se već dulje vrijeme mučim i nemogu ništ pametno smislit. Hvala !

Probaj ovo

SELECT DISTINCT user_id, (SELECT MAX(rezultat) FROM hiscore WHERE user_id = h.user_id) rezultat
FROM hiscore h
ORDER BY 2

SELECT user_id, MIN(rezultat) FROM hiscore GROUP BY user_id ORDER BY MIN(rezultat) ASC

Hvala Lola, radi iz prve :smiley:

P.S.
trnac hvala i tebi, nisam probao tvoje riješenje, jer sam prvo uzeo ovo kraće :smiley:


Copyright © 2020 WM Forum - AboutContact - Sponsored by: Mydataknox & Webmaster.Ninja