Sha*_*ali 2 mysql sql select distinct
我有一个MySQL表,包含userID,score.
单个用户可以有很多分数,但当然可以有很多用户.
我想找回得分最高的,每对中userID的数据库中.
我尝试了以下但我觉得我的方式错了:
SELECT DISTINCT(`userID`), `score` FROM `myTable` ORDER BY `score` DESC
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激.
谢谢
Shai.
你想要聚合函数max与group by子句:
select
    userid,
    max(score) as maxscore
from
    mytable
group by userid
order by maxscore desc
Run Code Online (Sandbox Code Playgroud)
在group by说,"嘿,MySQL的,给我最大score,但对它进行分区userid." 这样,您就可以获得每个的最高分数userid.
此外,您可以order by使用别名列,以便按最大分数,降序(对于排行榜或您拥有的内容)获取用户列表.
|   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           3265 次  |  
        
|   最近记录:  |