扫码关注官方订阅号
光阴似箭催人老,日月如移越少年。
SQL中采用ORDER BY进行排序SELECT ... FROM ... WHERE .... ORDER BY 总分 DESC不过排序针对的是查询结果,并不会完成你说的排序完,再放回去的过程,也就是说,只会对查询结果排序,不会体现在数据库存储的数据中。
SQL
ORDER BY
SELECT ... FROM ... WHERE .... ORDER BY 总分 DESC
排序完,再放回去
不知道你的使用场景是什么,是想要返回排名列表还是想要通过id取得它的排名,如果是第一种,楼上的方法已经可以满足,如果是第二种,可以粗略的用这个实现
select count(1) as 排名 from your_table where 总分 >= (select 总分 from your_table where id = `id`)
如果换成Oracle数据库,有rank函数可以很方便实现取排名的功能
select * from c1 ORDER BY 总分
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
SQL中采用ORDER BY进行排序SELECT ... FROM ... WHERE .... ORDER BY 总分 DESC不过排序针对的是查询结果,并不会完成你说的
排序完,再放回去的过程,也就是说,只会对查询结果排序,不会体现在数据库存储的数据中。不知道你的使用场景是什么,是想要返回排名列表还是想要通过id取得它的排名,如果是第一种,楼上的方法已经可以满足,如果是第二种,可以粗略的用这个实现
如果换成Oracle数据库,有rank函数可以很方便实现取排名的功能