Mam bazę danych gdzie zapisuje statystyki ze szkolnej ligi koszykarskiej. Wygląda to mniej więcej tak(w końcowej wersji nie ma team.leader_id i player.dob):

Stworzone są 2 rekordy w game_scores gdzie player_id jest takie same i wynosi 1. Chce wyświetlić statystyki gracza we wszystkich meczach, i stworzyłem takie zapytanie:
SELECT `teams`.`name` AS t_name, `game_scores`.`PTS` AS gs_PTS, `game_scores`.`AST` AS gs_AST, `game_scores`.`REB` AS gs_REB, `game_scores`.`ST` AS gs_ST, `game_scores`.`BS` AS gs_BS, `game_scores`.`BA` AS gs_BA, `game_scores`.`2PM` AS gs_2PM, `game_scores`.`2PA` AS gs_2PA, `game_scores`.`3PM` AS gs_3PM, `game_scores`.`3PA` AS gs_3PA, `game_scores`.`FTM` AS gs_FTM, `game_scores`.`FTA` AS gs_FTA, AVG(`game_scores`.`PTS`) AS avg_PTS, AVG(`game_scores`.`REB`) AS avg_REB, AVG(`game_scores`.`AST`) AS avg_AST, AVG(`game_scores`.`ST`) AS avg_ST, AVG(`game_scores`.`BS`) AS avg_BS, AVG(`game_scores`.`BA`) AS avg_BA, SUM(`game_scores`.`2PM`) AS sum_2PM, SUM(`game_scores`.`2PA`) AS sum_2PA, SUM(`game_scores`.`3PM`) AS sum_3PM, SUM(`game_scores`.`3PA`) AS sum_3PA, SUM(`game_scores`.`FTM`) AS sum_FTM, SUM(`game_scores`.`FTA`) AS sum_FTA, `games`.`game_date` AS g_date, (SELECT `teams`.`name` FROM `teams` WHERE `teams`.`id` = `games`.`host_id`) AS hostname, (SELECT `teams`.`name` FROM `teams` WHERE `teams`.`id` = `games`.`guest_id`) AS guestname FROM `games`, `players` INNER JOIN `game_scores` ON `players`.`id` = `game_scores`.`player_id` INNER JOIN `teams` ON `players`.`team_id` = `teams`.`id` WHERE `players`.`id` = '$id' ORDER BY `games`.`game_date`
$id jest pobierane metodą $_GET i wynosi 1.
Co robię źle, ponieważ wyświetlony zostaje wynik tylko z pierwszego meczu?
Siedzę nad tym już ponad 2h zmieniając kod, i próbując żeby wyszło, ale nie udaje mi się...
EDIT:
BTW. AVG(`game_scores`.`PTS`) zwraca średnią punktową z dwóch meczy... ;/