脚本宝典收集整理的这篇文章主要介绍了php – 在给定用户名时,从无序的MySql数据库中获取基于分数的排名,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
KEY username password score
以上列没有任何特定顺序.
我想向我的数据库发送一个用户名,让它根据其得分将该用户名的等级发回给我.例如,如果我在那里有10个人,那么第3个人的得分最高.当我通过第三人的用户名时,我希望它发回1.
这可能吗?
我一直在尝试这样的事情
$result = MysqL_query("SELECT * From tablename where username='$username' ORDER BY score DESC");
但它似乎没有给我行号
SELECT d.*,c.ranks From ( SELECT score,@rank:=@rank+1 Ranks FROM ( SELECT DISTINCT score FROM tableName a ORDER BY score DESC ) t,(SELECT @rank:= 0) r ) c INNER JOIN tableName d ON c.score = d.score // WHERE d.username = 'Helen'
> SQLFiddle Demo (Ranking with duplicates)
> SQLFiddle Demo (with filtering)
例如
KEY username password score Ranks 1 Anna 123 5 3 2 Bobby 345 6 2 3 Helen 678 6 2 4 Jon 567 2 4 5 Arthur ddd 8 1
ALTER TABLE tableName ADD INDEX (score)
以上是脚本宝典为你收集整理的php – 在给定用户名时,从无序的MySql数据库中获取基于分数的排名全部内容,希望文章能够帮你解决php – 在给定用户名时,从无序的MySql数据库中获取基于分数的排名所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。