SELECT hero 英雄名称 , COUNT(*) 出场次数
FROM match_info
GROUP BY 英雄名称
ORDER BY 出场次数 DESC
LIMIT 3;
查询结果:
2.统计YAGAO选手使用最多的三位英雄
SELECT hero 英雄名称 , COUNT(*) 出场次数
FROM match_info JOIN player ON match_info.player_id=player.id
WHERE `name`='YAGAO'
GROUP BY 英雄名称
ORDER BY 出场次数 DESC
LIMIT 3;
查询结果:
3.统计所有使用过Nautilus的选手,以及选手的队伍
SELECT player.id 选手ID , team.id 队伍ID ,player.`name` 选手名称 ,team.`name` 队伍名称
FROM match_info
JOIN player ON match_info.player_id = player.id
JOIN team ON match_info.team_id = team.id
WHERE hero = 'Nautilus'
查询结果:
4.统计所有bo中人头数最高的三个队伍
SELECT oid , bo , team.id 队伍ID , team.`name` 队伍名称 , `kill`
FROM match_info
JOIN team ON match_info.team_id = team.id
ORDER BY `kill` DESC
LIMIT 3;
查询结果:
5.统计oid为10136,bo为3的场次中,所有选手的评分
SELECT oid , bo , team.id 队伍ID , player.id 选手ID , player.`name` 选手昵称 , `kill`+0.5*ass-death+10 评分
FROM match_info
JOIN player ON match_info.player_id = player.id
JOIN team ON match_info.team_id = team.id
WHERE oid = '10136' AND bo = '3';
查询结果:
6.统计所有比赛中TOP为英雄的出场情况,按照次数倒序
SELECT hero 英雄名称 , COUNT(*) 出场次数
FROM match_info WHERE location = 'TOP'
GROUP BY 英雄名称
ORDER BY 出场次数 DESC;
查询结果:
7.统计所有选手使用Jinx的选手中,kill最高的三位选手
SELECT player.id 选手ID ,player.`name` 选手昵称 ,`kill`
FROM match_info
JOIN player ON match_info.player_id = player.id
WHERE hero = 'Jinx'
ORDER BY `kill` DESC
LIMIT 3;
查询结果:
8.统计BIN选手使用过的所有英雄,KDA最高的三位
SELECT player.id 选手ID ,player.`name` 选手昵称 , hero 英雄名称 , (`kill`+ass)/death KDA
FROM match_info
JOIN player ON match_info.player_id = player.id
WHERE player.`name`='BIN'
GROUP BY 英雄名称
ORDER BY KDA DESC
LIMIT 3;
查询结果:
9.统计On选手使用过的英雄,计算KDA,并按照使用次数倒序排列
SELECT player.id 选手ID ,player.`name` 选手昵称 , hero 英雄名称 , COUNT(*) 使用次数 , (`kill`+ass)/death KDA FROM match_info JOIN player ON match_info.player_id = player.id WHERE player.`name` = 'ON' GROUP BY 英雄名称 ORDER BY 使用次数 DESC;
查询结果:
10.统计所有BOT位的英雄的使用次数,kda
SELECT hero 英雄名称 , COUNT(*) 使用次数 , (SUM(`kill`)+SUM(ass))/SUM(death) KDA FROM match_info WHERE location = 'BOT' GROUP BY 英雄名称
查询结果:
11. 统计所有的英雄中,KDA最高的三个倒序排列,需要带上队伍名称和选手名称
SELECT player.id 选手ID , player.`name` 选手昵称 ,team.`name` 队伍名称 , hero 英雄名称 ,(`kill`+ass)/death KDA FROM match_info JOIN player ON match_info.player_id = player.id JOIN team ON match_info.team_id = team.id GROUP BY 英雄名称 ORDER BY KDA DESC LIMIT 3;
查询结果: