mysql如何表示排名4~6名

mysql如何表示排名4~6名,第1张

按照并列且占位。

mysql按照并列且占位的规则来排名,例如96分应该是第四名,95分是第6名。

mysql排名并列即相同的值,相同的值保留重复名次,遇到下一个不同的值,跳跃到总共的排名。

MYSQL 如果强行实现,查询逻辑会变的很复杂,不符合实际

计算最好是在PHP里面

$data ..//比如查询结果返回给DATA 的二维数组

foreach($data as $vo){

    $math[$vo['name']] = $vo['数学']

    $langue[$vo['name']] = $vo['语文']

    $englist[$vo['name']] = $vo['英语']

}

arsort($math)

arsort($langue)

arsort($englist)

$i = 1

foreach($math as $key=>$vo){

    $res[$key]['数学'] =  $i

}

$i = 1

foreach($langue as $key=>$vo){

    $res[$key]['语文'] =  $i

}

$i = 1

foreach($englistas $key=>$vo){

    $res[$key]['英语'] =  $i

}

MySQL中排序输出需要用order by。

如图,test表中有如下数据:

现在分别要求按ID正序和倒序输出结果。

正序:

select * from test order by id

结果:

倒序:

select * from test order by id desc

结果:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6102406.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-14
下一篇 2023-03-14

发表评论

登录后才能评论

评论列表(0条)

保存