В общем, мне нужен запрос, который вернет отображаемое имя, количество убийств и количество смертей.
У меня есть две таблицы, из которых мне нужно извлечь данные.
Две таблицы
player
id | name
2334324 | user
4353454 | user2
где id
— их уникальный идентификатор, а name
— их отображаемое имя.
Вторая таблица:
player_kill
id | killer | victim |
1 | 2334324 | 4353454 |
2 | 2334324 | 4353454 |
3 | 4353454 | 2334324 |
где столбцы killer
/ victim
содержат уникальный идентификатор таблицы player
.
Я хотел бы иметь возможность подсчитывать вхождения идентификатора игрока в killer
и victim
, чтобы запрос возвращал:
name | kills | deaths
user | 2 | 1
user2| 1 | 2
где число убийств будет количеством вхождений playerid
в столбце killer
и то же самое для смертей.
Надеюсь, я предоставил достаточно информации.
Что у меня есть до сих пор:
SELECT `player`.`name`, COUNT(DISTINCT `player_kill`.`id`) as `kills`, COUNT(DISTINCT `player_kill`.`id`) as `deaths`
FROM `player`
LEFT JOIN `player_kill` ON `player`.`id`=`player_kill`.`killer`
LEFT JOIN `player_kill` ON `player`.`id`=`player_kill`.`victim`
WHERE `player`.`id` = `player_kill`.`killer` AND `player`.`id` = `player_kill`.`victim`
GROUP BY `player`.`id`;