musicテーブル
id | name | |
---|---|---|
favoriteテーブル
id | music_id | member_id |
---|---|---|
music.idとfavorite.music_idは外部結合されています。
favorite.member_idはその音楽が好きな人のIDを指しています。
このときに楽曲の名前(music.name)とその音楽が好きな人の数を抽出したいです。(0人のときは0を)
そこで自分は
sql
1SELECT 2 music.name, 3 COALESCE(COUNT(favorite.music_id) , 0 ) 4FROM 5 music 6LEFT OUTER JOIN 7 favorite ON music.id = favorite.music_id 8GROUP BY 9 music.id 10
としました。
その際、GROUP BYをmusic.nameにしてはいけないのかの疑問が浮かびました。
GROUP BYをmusic.nameにしてはいけない理由などありましたら、ご回答したいただけると幸いです