繁体   English   中英

MySQL获取值最大的整行

[英]Mysql Fetch entire row where value is max

我正在尝试以下

Table : teams_members

Id          Team_id          User_id

1           103              65524
14          103              65529
16          103              65530
17          103              65526
19          103              65528

Table : users
Id          username

65524       Kaiprioska
65526       Darkstarling 
65528       Metazoans98
65529       Darth Laser
65530       TheBourbonKid

Table : users_playeraccounts
Id       user_id      summoner_name         rank_solo

7        65524        kaiprioska            19 
8        65524        swaggapandaa          14
9        65524        Yolonese Prophet      12
10       65529        Darth Laser           15
11       65530        TheBourbonkid         18
12       65528        Metazoans98           9
13       65530        TheBourbonKid         12

结果需要是什么:

user_id  summoner_name    rank_solo

65524    kaiprioska       19
65529    Darth laser      15
65530    TheBourbonkid    18
65528    metazoans98      9
655529   darth laser      15

因此,每个团队成员都需要一个users_playeraccounts条目,其中rank_solo是该user_id的最大值。 我可以获得完整的列表,因此每个成员的每个玩家帐户都可以,但是最大条目数却不能。

任何帮助将不胜感激。

select user_id, summoner_name, max(rank_solo ) as rank_solo
    from users_playeraccounts
    group by user_id

尝试这个

SELECT USER_ID, SUMMONER_NAME, MAX(RANK_SOLO) FROM users_playeraccounts GROUP BY USER_ID

您需要查询该表两次; 一次获得最高排名,另一次获取他们的记录。 (顺便说一句,如果用户有两个最高排名,两个都在结果中。)

SELECT q.user_id, q.summoner_name, q.rank_solo 
FROM (
   SELECT user_id, MAX(rank_solo) AS rank_solo
   FROM users_playeraccounts 
   GROUP BY user_id
) As maxQ
INNER JOIN users_playeraccounts AS q USING (user_id, rank_solo)
GROUP BY q.user_id -- If you only want one per user.
;

SELECT u.id,u.username,solo_rank FROM(选择[user_id] userID,MAX(rank_solo)solo_rank FROM users_playeraccounts GROUP BY [user_id])BestSoloRanking加入用户u ON BestSoloRanking.userID = u.id

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM