我有以下查询,我试图按照平均评分最高的成员首先显示的顺序显示成员,如果多个成员具有相同的平均评分,则将考虑最高评分。
此处,会员 A 被 3 位访客评分,平均评分值为 5,而会员 B 已被 2 位访客评分,平均评分值为 5
因此,根据以下查询,会员 A 应显示在第一位,因为他有 5 个平均评分并由 3 人评分,而会员 B 应显示在第二位。
但是成员 B 显示第一个,成员 A 显示第二个,所以这是问题。请让我知道我在查询中做错了什么。
SELECT m.*,mc.*
FROM t_member m
LEFT JOIN tr_member_category mc ON m.memberpkid=mc.memberpkid
LEFT JOIN tr_comment c
ON m.memberpkid=c.memberpkid
AND c.approved='YES' AND c.visible='YES'
WHERE m.visible='YES' AND m.approved='YES'
AND m.gender='FEMALE' AND mc.archivecatpkid=1
GROUP BY m.memberpkid
ORDER BY avg(c.ratingvalue) DESC, COUNT(c.ratingvalue) DESC
非常感谢您,KRA