Php 如何获得MySqL中唯一的第二好分数?不是其他人

Php 如何获得MySqL中唯一的第二好分数?不是其他人,php,mysql,Php,Mysql,我有一个服务器的小游戏,我有一个问题,我的数据库,我需要在mysql查询只有第二个最好的分数名。。有人能帮我吗? 这是我的数据库: 数据库 name | kills ------+------ Leon | 22 Andy | 14 Brian | 8 我只需要从安迪那里得到安迪的名字和杀戮! 代码: 请帮帮我!我可以用limit来做这个吗?我该怎么办?厚度试试: SELECT name FROM DATA_BASE ORDER BY kills DESC LIMI

我有一个服务器的小游戏,我有一个问题,我的数据库,我需要在mysql查询只有第二个最好的分数名。。有人能帮我吗? 这是我的数据库:

数据库

name  | kills 
------+------
Leon  | 22    
Andy  | 14    
Brian | 8  
我只需要从安迪那里得到安迪的名字和杀戮! 代码:

请帮帮我!我可以用limit来做这个吗?我该怎么办?厚度

试试:

SELECT name FROM DATA_BASE ORDER BY kills DESC LIMIT 1,1

这应该只返回第二个最佳值,因为我们需要1个选项(第二个数字),并且我们希望将其偏移1(第一个数字)

您可以使用
LIMIT
关键字,如下所示:

 SELECT * FROM DATA_BASE ORDER BY kills DESC LIMIT 1, 1

这应该可以做到:

SELECT * FROM DATA_BASE ORDER BY kills DESC LIMIT 1 OFFSET 1;
LIMIT 1
限制选定的行数,并且
OFFSET 1
将行偏移1,从而只选择第二行。

试试看。 应限制为一条1记录,并从记录2开始

"SELECT * FROM DATA_BASE ORDER BY kills DESC LIMIT 1 OFFSET 1" 
我们可以通过使用MAX本机函数在不使用LIMIT的情况下执行相同的操作:

SELECT MAX(kills) FROM DATA_BASE WHERE kills NOT IN ( SELECT Max(kills) FROM DATA_BASE);

与之前的版本相比,哪一个版本更容易

你甚至没有谷歌“限制mysql”吗?您还需要另一个子句和方法在您的查询中使用mysql的
LIMIT
“只需要在mysql的查询中获得第二个最好的分数名”——即
14
,对吗?你是在看评论还是不介意?编辑:好的,我看你不介意。好的,谢谢你,我现在知道该怎么办了;我使用这个,但是游戏认为极限应该是killsMySQL的极限,它不使用极限来计算大于或小于,它限制了返回的数量。您的程序中可能还有其他问题。
SELECT * FROM (SELECT * FROM DATA_BASE ORDER BY kills DESC LIMIT 2) AS DB ORDER BY kills LIMIT 1;
SELECT MAX(kills) FROM DATA_BASE WHERE kills NOT IN ( SELECT Max(kills) FROM DATA_BASE);