Q&A for music historians, critics, and fans
select distinct top 30 Users.DisplayName, BestComment.Id, Max(BestComment.Score), WorstComment.Id, Min(WorstComment.Score) from Users join (select Comments.Id, Comments.Score, Comments.UserId from Comments) BestComment on BestComment.UserId = Users.Id join (select Comments.Id, Comments.Score, Comments.UserId from Comments) WorstComment on WorstComment.UserId = Users.Id where BestComment.Score>0 and WorstComment.Score<=0 group by Users.DisplayName, BestComment.Id, WorstComment.Id