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.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
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.