Mysql
 sql >> Baza danych >  >> RDS >> Mysql

SQL JOIN dwie tabele z AVG

Musisz pogrupować według wszystkich pól, które chcesz zachować:

SELECT songs.id, songs.song, songs.artist, 
    AVG(score.score * 1.0) AS AvgScore
FROM songs 
    LEFT JOIN score 
        ON score.id=songs.id 
GROUP BY songs.id, songs.song, songs.artist
ORDER BY songs.id, score DESC

Alternatywnie możesz po prostu zrobić to:

SELECT songs.id, songs.song, songs.artist, 
    (SELECT AVG(Score) FROM score WHERE score.id = songs.id) AS AvgScore)
FROM songs 


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Regex pasujący do komentarzy MySQL

  2. Połączenie z bazą danych PHP i MYSQL oraz tworzenie tabel tylko raz

  3. Czy aplikacja na Androida może połączyć się bezpośrednio z internetową bazą danych mysql?

  4. Jak używać GROUP BY w zapytaniu podczas używania zmiennych

  5. Wymuś przeładowanie/odświeżenie po naciśnięciu przycisku Wstecz