我正在做一个简单的游戏,我想做一个迷你排行榜,用户可以查看。排行榜将包括用户,5名球员在他以上的总积分,和5名球员在他以下的总积分。如何通过mysql查询返回这些用户?
例如:在下表中,当用户的id为8时,我想返回lea、joshua、pete(因为在本例中没有5个在他之上)、john、bert、maxi、max、anna的玩家(以及他们的点数)。
id| name | points
1 Max 20
2 anna 10
3 bert 30
4 maxi 30
5 lea 100
6 lei 10
7 joshua 90
8 Pete 50
9 John 40
1条答案
按热度按时间cgfeq70w1#
如果您运行的是mysql 8.0,那么可以使用
row_number()
以及一个常用的表表达式: