gpt4 book ai didi

mysql - 按排名对用户排序时排除排名

转载 作者:行者123 更新时间:2023-11-29 12:01:24 25 4
gpt4 key购买 nike

我尝试按用户的 XP 进行排序,同时将管理员排除在结果之外。

管理员的权限列等于表中的2

声望越高,按经验值排序时的排名就越高。

select 
a.*,
1 + count(b.username) AS rank
from `hs_users` as `a`
left join `hs_users` as `b`
on

`b`.`prestige` = `a`.`prestige` and `b`.`overall_xp` > `a`.`overall_xp`

or `b`.`prestige` > `a`.`prestige`

and `b`.`rights` <> `2`

where `a`.`rights` <> 2

group by `a`.`username` order by `prestige` desc, `rank` asc

此查询给我一个名为Unknown columns '2' in 'on Clause'的错误。

我该如何解决这个问题?

最佳答案

删除数字和字符串中的反引号。反引号仅用于转义列名称。为了转义字符串,您必须使用单引号。在nurs,没有必要逃避它们。

select 
a.*,
1 + count(b.username) AS rank
from `hs_users` as `a`
left join `hs_users` as `b`
on

`b`.`prestige` = `a`.`prestige` and `b`.`overall_xp` > `a`.`overall_xp`

or `b`.`prestige` > `a`.`prestige`

and `b`.`rights` <> 2

where `a`.`rights` <> 2

group by `a`.`username` order by `prestige` desc, `rank` asc

关于mysql - 按排名对用户排序时排除排名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32310444/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com