Ich habe ein Thema, und verschiedene Nutzer bewerten einen Film in 3 verschiedenen Typen.SQL-Berechnung Durchschnitt für die Bewertung mit verschiedenen Typen
sagen, dass ich Thread 22, und verschiedene Typen = movie.quality, movie.story and movie.imdb
so die Struktur der Rating-Tabelle sieht wie folgt aus:
| ID | thread_id | user_id | type | value
| 12 | 22 | 2 | 'movie.imdb' | 8.5
| 23 | 22 | 4 | 'movie.imdb' | 7.5
| 42 | 22 | 5 | 'movie.story' | 8.5
| 56 | 22 | 6 | 'movie.quality' | 8.5
| 76 | 22 | 6 | 'movie.imdb' | 7.53
als Ergebnis meiner Anfrage, ich den Durchschnitt erhalten möchten Pro-ID und Typ, so etwas wie
array(thread_id=22 => array(
type=>movie.imdb => average=>8.2),
type=>movie.story => average=>8.8),
type=>movie.quality => average=>8.1))
Wie kann ich diese Abfrage strukturieren?
SELECT Thread, TYPE, AVG (Wert), COUNT (*) von Bewertung WHERE Thread = 25 GROUP BY Thread, TYPE, funktioniert wie ein Charme, danke. – Confidence