Ciao a tutti,
mi trovo a combattere con un risultato inaspettato da una query apparentemente semplice, con un Mysql 5 ed un phpmyadmin su linux.
Lanciando questa query da phpmyadmin:
SELECT distinct (id_server),bps
FROM earth_banda_giorno
ORDER BY bps DESC
LIMIT 0 , 30
Ottengo questo risultato (riporto solo alcune righe):
id_server bps
129 44153672
24 44150428
129 43977130
24 43957459
40 43067331
111 42863806
129 34975835
24 34920153
129 23536162
24 23526355
Che è un risultato inaspettato poichè l'id_server viene ripetuto nonostante il distinct.
La stranezza viene confermata eseguendo la stessa query senza il campo bps nella select il risultato cambia completamente:
SELECT distinct (id_server)
FROM earth_banda_giorno
ORDER BY bps DESC
LIMIT 0 , 30
id_server
27
15
40
76
72
140
44
133
97
Mi chiedo, ma dove è finito l'id_server 129? E' quello con il valore bps più alto in assoluto! Sto sbagliando tutto?
Io mi ricordavo che il distinct tenesse in considerazione i campi tra le parentesi e solo quelli. Ma a questo punto credo di sbagliarmi e vi chiedo conferma ed un eventuale alternativa.
Il mio obiettivo, se non fosse chiaro, è di ottenere i primi n id_server con i bps più alti senza ripetizioni (id_server non è unico).
Sarà che sono ancora un po' assonnato, ma mi sto perdendo
Grazie a tutti,
Algianbex