Q&A for Drupal developers and administrators
SELECT TagsRanking.TagName, TagsRanking.Score, STR(TagsRanking.Ranking) + '%' AS TopN FROM ( SELECT answers.OwnerUserId AS UserId, Tags.TagName AS TagName, SUM(answers.score) AS Score, NTILE(1000) OVER(PARTITION BY Tags.TagName ORDER BY SUM(answers.score) DESC) AS Ranking FROM Posts answers JOIN PostTags ON answers.ParentId = PostTags.PostId JOIN Tags ON PostTags.TagId = Tags.Id WHERE Tags.id = 9 -- c# GROUP BY answers.OwnerUserId, Tags.TagName ) TagsRanking --WHERE TagsRanking.UserId = ##UserId## ORDER BY TagsRanking.Ranking, TagsRanking.Score DESC, TagsRanking.TagName