Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> składnia mysql, sortowanie po średniej AVG
hao
post
Post #1





Grupa: Zarejestrowani
Postów: 106
Pomógł: 0
Dołączył: 12.02.2004

Ostrzeżenie: (0%)
-----


Próbowałem ... tongue.gif

Otóż

Prosta Tabela:

  1. user | film | ocena
  2. ----------------------
  3. 12 | 154 | 5
  4. 9 | 24 | 2
  5. 21 | 5 | 5
  6. 4 | 7 | 7
  7. itp...


Chciałbym teraz wyciągnąć 10 najwyższych średnich ocen.

czyli otrzymać wynik typu:

10. średnia: 9,7 dla filmu numer 4
9. średnia: 9,2 dla filmu numer 23
8. średnia: 8,4 dla filmu numer 16
itd...

oczywiście numerki l.p. to już sobie sam dołożę, ale nie mam pojęcia jak napisać takie podwójne zapytanie MYSQL, aby jednocześnie pobierało DISTINCT(film) ale... WHERE (MAX(AVG(ocena))) ... ?

Dziękuję z góry za pomoc.

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
tehaha
post
Post #2





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

Ostrzeżenie: (0%)
-----


zakładam, że są to kolejno ID użytkownika, ID filmu i wartość oceny

  1. SELECT film, AVG(ocena) AS rank FROM tabelka GROUP BY film ORDER BY rank DESC LIMIT 10


myślę, że gdybyś zajrzał do manuala to byś to bez problemu zrobił http://dev.mysql.com/doc/refman/5.0/en/gro...ml#function_avg



Ten post edytował tehaha 12.09.2011, 17:14:26
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 22:22