Это то, что вы хотите?
SELECT TOP(5) News.*
FROM News
WHERE News.NewsActive = 1
ORDER BY
(SELECT COUNT(*)
FROM Comments
WHERE Comments.NewsId = News.NewsId AND Comments.CommentsActive = 1) DESC;
Ответ на ваш комментарий будет выглядеть примерно так:
SELECT TOP(5) News.*,
(SELECT COUNT(*)
FROM Comments
WHERE Comments.NewsId = News.NewsId AND Comments.CommentsActive = 1) AS TotalComments
FROM News
WHERE News.NewsActive = 1
ORDER BY TotalComments DESC;