04. august 2011 - 20:44Der er
7 kommentarer og 1 løsning
Finde top 10 ved min 5 bedømmelser
Hejsa... Jeg har en tabel i en MySQL database hvor der bliver gemt bedømmelser af artikler. Nu kunne jeg godt tænke mig en top 10 liste over de bedst bedømte artikler, men for at komme i betragtning til listen skal artiklen være bedømt min. 5 gange.
Tabellen ser således ud: id, article_id, user_id, rating, rate_date
Så hvis der er 5 records med samme article_id skal artiklen tælle med i listen, derefter skal gennemsnittet regnes ud.
Hvordan skruer jeg lige en MySQL/PHP sætning sammen til dette ? Er lidt ud over min viden, desværre.
coderdk's forslag SELECT article_id, AVG(rating) AS avgrate, COUNT(article_id) AS amount FROM dintabel GROUP BY article_id ORDER BY avgrate DESC med tilføjelsen LIMIT 0, 10; - så skulle den være der.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.