SQL добавляет столбцы каждой записи вместе

Чтобы быть тупым, я не знаю SQL, но я не хочу ответа, я хочу сам это решить.

Здесь вопрос:

Напишите SQL-запрос для вычисления количества целей для каждой команды.

игроки

id name team_id goals
1 Joel 1 3
2 Ed 2 1
3 Simon 2 4

Команды

id name
1 New Zealand
2 London

То, что я прошу, - это стрелка информации, которая позволит мне решить вопрос.

Я пробовал искать себя, но я даже не знаю правильной терминологии, чтобы задать вопрос, googling "написать sql для добавления полей для каждой строки", похоже, возвращает о добавлении столбцов или вставке.

Ответ 1

Вам нужно сначала попытаться подключиться к своим таблицам (идентификатор в командах будет связан с TeamId в Players.) на основе столбцов внешнего ключа.

Затем вам нужно выполнить GROUP BY и использовать агрегированную функцию SUM для получения целей для каждой команды.

Итак, ваш запрос будет выглядеть следующим образом:

select t.name, sum(p.goals) as cnt, 
from players p inner join teams t on p.teamid = t.id
group by t.name

Ответ 2

Сначала вам нужно сгруппировать игроков по командам: используйте t1.id = t2.id, чтобы присоединиться к значениям в таблицах, а затем сгруппировать тему по BROUP BY " t.name.

Затем: пользовательская функция SUM (значение) ", которая суммирует значения.

select teams.name,sum(players.goals) from players,team where player.team_id=teams.id group by teams.name;