SELECT s.[Statistics ID], s.[Player ID], s.[Game ID], s.[Season ID], s.[Goals Scored], s.[Assists Made], s.[Key Passes], s.[Successful Tackles], s.[Successful Interceptions], s.[Goals Conceded], p.[Player Name], p.[Player ID]
FROM Statistics$ s, Players$ p WHERE s.[Player ID]=p.[Player ID]
Это то, что появляется при предварительном просмотре
Привет, ребята, поэтому у меня есть проблема с этим запросом, но я хочу, чтобы это произошло для всех значений, таких как Goals Scored, Assists Made, Key pass и т.д., Чтобы подвести итог для каждого ID игрока, чтобы они отображались только один раз.
Вам нужно использовать агрегаты, такие как GROUP BY
а затем SUM(...)
SELECT DISTINCT s.[Statistics ID], s.[Player ID], s.[Game ID], s.[Season ID],
p.[Player Name], Stats.*
FROM Statistics$ s
JOIN Players$ p ON s.[Player ID] = p.[Player ID]
JOIN (
SELECT s.[Player ID], SUM(s.[Goals Scored]) AS GoalsScored,
SUM(s.[Assists Made]) AS AssistsMade, SUM(s.[Key Passes]) AS KeyPasses,
SUM(s.[Successful Tackles]) AS SuccessfulTackles,
SUM(s.[Successful Interceptions]) AS SuccessfulInterceptions,
SUM(s.[Goals Conceded]) AS GoalsConceded
FROM Statistics$ s
GROUP BY s.[Player ID]
) AS Stats ON Stats.[Player ID] = s.[Player ID]
Обратите внимание, что вам нужно использовать агрегатную функцию для любого столбца, который не находится в GROUP BY
, но вы можете присоединиться к результатам вместе с деталями плеера, как я сделал выше