Php MySQL如何获取表中前100个值的最小值和最大值

Php MySQL如何获取表中前100个值的最小值和最大值,php,mysql,Php,Mysql,我希望能够找到我们数据库中前100名分数的最大值和最小值 看起来应该很简单,但我遗漏了一些东西 我试过了 SELECT MAX(BEST_GAME_SCORE) as max_bgs , MIN(BEST_GAME_SCORE) as min_bgs FROM user WHERE BEST_GAME_SCORE IN (SELECT BEST_GAME_SCORE FROM user

我希望能够找到我们数据库中前100名分数的最大值和最小值

看起来应该很简单,但我遗漏了一些东西

我试过了

SELECT 
       MAX(BEST_GAME_SCORE) as max_bgs , 
       MIN(BEST_GAME_SCORE) as min_bgs 
FROM user 
WHERE BEST_GAME_SCORE IN (SELECT BEST_GAME_SCORE 
                          FROM user 
                          ORDER BY BEST_GAME_SCORE DESC 
                          LIMIT 100)
但是。。。限制在子查询中不起作用

我尝试过使用JOIN,但我总是为MIN获取0,其中JOIN中的MIN不应为0

SELECT 
    MAX(user.BEST_GAME_SCORE), 
    MIN(user.BEST_GAME_SCORE) 
FROM user 
  JOIN ( SELECT user.BEST_GAME_SCORE 
         FROM user 
         ORDER BY user.BEST_GAME_SCORE DESC 
         LIMIT 100) latest
编辑: 例如 如果我有一张有以下分数的表

1000
900
800
700
600
500
400
300
200
100
我想选择前5名的分数(即1000900800700600),但让查询只返回1000和600的最大值和最小值。抱歉,我认为这很清楚。

使用子查询:

SELECT MAX(BEST_GAME_SCORE) as max_bgs , MIN(BEST_GAME_SCORE) as min_bgs
from (SELECT BEST_GAME_SCORE
      FROM user
      ORDER BY BEST_GAME_SCORE DESC
      LIMIT 100
     ) u;
使用子查询:

SELECT MAX(BEST_GAME_SCORE) as max_bgs , MIN(BEST_GAME_SCORE) as min_bgs
from (SELECT BEST_GAME_SCORE
      FROM user
      ORDER BY BEST_GAME_SCORE DESC
      LIMIT 100
     ) u;
使用子查询:

SELECT MAX(BEST_GAME_SCORE) as max_bgs , MIN(BEST_GAME_SCORE) as min_bgs
from (SELECT BEST_GAME_SCORE
      FROM user
      ORDER BY BEST_GAME_SCORE DESC
      LIMIT 100
     ) u;
使用子查询:

SELECT MAX(BEST_GAME_SCORE) as max_bgs , MIN(BEST_GAME_SCORE) as min_bgs
from (SELECT BEST_GAME_SCORE
      FROM user
      ORDER BY BEST_GAME_SCORE DESC
      LIMIT 100
     ) u;


嘎。。。谢谢你,那太容易了。我想我需要理解何时使用WHERE列的区别subquery@naphier:区别在于派生表(在此答案中)和不相关子查询(您的尝试)之间。事实上,这不起作用,对不起,我跳了枪。呃,对不起,这似乎不起作用。我只是在前5名尝试了一下,它给了我最大值和第三高值。因此:最佳游戏分数(前5名)500 400 300 200 100您的查询给出500和300@naphier应该正确地解释问题,根据你现在回答的问题。@naphier。这个查询应该完全符合您的要求。嘎。。。谢谢你,那太容易了。我想我需要理解何时使用WHERE列的区别subquery@naphier:区别在于派生表(在此答案中)和不相关子查询(您的尝试)之间。事实上,这不起作用,对不起,我跳了枪。呃,对不起,这似乎不起作用。我只是在前5名尝试了一下,它给了我最大值和第三高值。因此:最佳游戏分数(前5名)500 400 300 200 100您的查询给出500和300@naphier应该正确地解释问题,根据你现在回答的问题。@naphier。这个查询应该完全符合您的要求。嘎。。。谢谢你,那太容易了。我想我需要理解何时使用WHERE列的区别subquery@naphier:区别在于派生表(在此答案中)和不相关子查询(您的尝试)之间。事实上,这不起作用,对不起,我跳了枪。呃,对不起,这似乎不起作用。我只是在前5名尝试了一下,它给了我最大值和第三高值。因此:最佳游戏分数(前5名)500 400 300 200 100您的查询给出500和300@naphier应该正确地解释问题,根据你现在回答的问题。@naphier。这个查询应该完全符合您的要求。嘎。。。谢谢你,那太容易了。我想我需要理解何时使用WHERE列的区别subquery@naphier:区别在于派生表(在此答案中)和不相关子查询(您的尝试)之间。事实上,这不起作用,对不起,我跳了枪。呃,对不起,这似乎不起作用。我只是在前5名尝试了一下,它给了我最大值和第三高值。因此:最佳游戏分数(前5名)500 400 300 200 100您的查询给出500和300@naphier应该正确地解释问题,根据你现在回答的问题。@naphier。这个查询应该完全满足您的要求。