Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

SQL JOIN hai bảng với AVG

Bạn cần NHÓM THEO tất cả các trường bạn muốn giữ lại:

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

Ngoài ra, bạn chỉ có thể làm điều này:

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. Làm thế nào để loại bỏ khoảng trắng hàng đầu trong MySQL

  2. MySql - Làm cách nào để lấy giá trị ở hàng trước và giá trị ở hàng tiếp theo?

  3. mysql chuyển đổi thời gian 12 giờ thành 24 giờ

  4. Mẹo để cung cấp hiệu suất cơ sở dữ liệu MySQL - Phần thứ hai

  5. MySQL có sử dụng chỉ mục để sắp xếp không?