В настоящее время у меня есть база данных с двумя таблицами.
db.playerstats
PlayerUID | PlayerKills
123456 | 10
234567 | 20
345678 | 33
А ТАКЖЕ
db.playerinfo
UID | Name
123456 | Tom
234567 | Joe
345678 | Alex
Мне нужно взять максимальное значение playerstats PlayerKills
с Name
игрока в таблице playerinfo
.
Я знаю, как тянуть максимум
SELECT PlayerUID, MAX(PlayerKills) FROM db.playerstats;
Но то, что я не понимаю, является инструкцией для хранения UID из playerstats
и возвращения name
из playerinfo
.
PlayerUID ссылается на UID в ключе. Я не знаю, облегчает это или нет.
Как комментарий ниже, я пытаюсь сделать выражение о соединении
SELECT PlayerUID, MAX(PlayerKills), Name FROM test_a3wasteland.playerstats JOIN test_a3wasteland.playerinfo ON PlayerUID = UID;
Ясно, что я знаю, что это неправильно, но как мне сопоставить имя с наивысшим значением при его изменении?
Обновление: я попробовал:
SELECT Name, MAX(PlayerKills) FROM db.playerstats JOIN db.playerinfo ON PlayerUID = UID;
Но он все еще возвращает неправильное имя.
Этот запрос получит имя пользователя с наибольшим количеством убийств. Limit 1 вернет первую 1 запись с наибольшим количеством убийств.
select info.name,
stats.PlayerKills
from test_a3wasteland.playerstats stats
inner join test_a3wasteland.playerinfo info
on stats.PlayerUID = info.UID
order by stats.PlayerKills DESC
limit 1;