推理就像
SELECt
每个流派的最高票数JOIN
返回原始表以检索找到的记录的其他列。
SQL语句
SELECT us.*FROM UserSongs us INNER JOIN ( SELECt fav_song_genre , MAX(votes_as_fav_member) AS votes_as_fav_member FROM UserSongs GROUP BY fav_song_genre ) usm ON usm.fav_song_genre = us.fav_song_genre AND usm.votes_as_fav_member = us.votes_as_fav_member
编辑
如何确定ID较低的人已返回
SELECt MIN(us.user_id) as user_id , us.fav_song_genre , us.votes_as_fav_memberFROM UserSongs us INNER JOIN ( SELECt fav_song_genre , MAX(votes_as_fav_member) AS votes_as_fav_member FROM UserSongs GROUP BY fav_song_genre ) usm ON usm.fav_song_genre = us.fav_song_genre AND usm.votes_as_fav_member = us.votes_as_fav_memberGROUP BY us.fav_song_genre , votes_as_fav_member



