WordPress和排名用户

时间:2018-07-19 19:50:46

标签: mysql wordpress ranking

我使用wordpress来构建游戏,在这个游戏中用户得分(team_score),我需要获得特定用户的单数排名,所以我写了这条mysql指令来说明它的工作原理:

SELECT
user_id, rank
FROM (
SELECT @rank:=@rank+1 AS rank, user_id FROM usermeta u JOIN (SELECT 
@rank:=0) r WHERE u.meta_key='team_score'  ORDER BY u.meta_value
) as m
WHERE user_id=32

通过这种方式,我对user_id = 32拥有一个排名,并且该排名是针对具有team_score元键的所有用户计算的

但是我有一个问题,存在一种特殊类型的用户,他们被“隐藏” 在这种情况下,用户的meta_key ='hidden'且值为= 1,否则不存在或为= 0

所以我需要在此选择中排除thoose用户

SELECT @rank:=@rank+1 AS rank, user_id FROM usermeta u JOIN (SELECT 
@rank:=0) r WHERE u.meta_key='team_score'  ORDER BY u.meta_value

有什么想法吗? 谢谢

0 个答案:

没有答案