text: select artist_name, album_name, star, total, album.rating, star/(total*4.0)*100 as percentage from album join (select artist_name, album.album_id, sum(case when grade='*' then 4 when grade='A' then 3 when grade='B' then 2 when grade='C' then 1 end) as star, count(*) as total, rating from song join album on song.album_id=album.album_id join artist on album.artist_id=artist.artist_id group by 1,2,album.album_id,rating) as sub on album.album_id = sub.album_id where album.rating is not null order by percentage desc limit 20;
  