SQL присоединяется к упражнениям по футболу База данных: найдите наибольшее количество карт, показанных в матчах
База данных по футболу на SQL: объединяет упражнение-44 с решением
44. Напишите запрос в SQL, чтобы найти наибольшее количество карточек, показанных в матчах.
Пример таблицы: soccer_country
Пример таблицы: player_booked
Пример таблицы: player_mast
Пример решения:
Код SQL:
SELECT b.match_no,COUNT(b.*) Booked
FROM soccer_country a
JOIN player_booked b ON a.country_id=b.team_id
JOIN player_mast c ON b.player_id=c.player_id
GROUP BY b.match_no
having COUNT(b.*)=(
SELECT MAX(mm) FROM (
SELECT COUNT(*) mm
FROM player_booked
GROUP BY player_id) inner_result)
order by match_no;
Пример вывода:
match_no | забронированы ---------- + -------- 6 | 3 9 | 3 11 | 3 15 | 3 19 | 3 21 | 3 29 | 3 36 | 3 44 | 3 (9 рядов)
Практика онлайн
Пример базы данных: футбол
Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.
Предыдущий: Напишите запрос в SQL, чтобы найти количество игроков, забронированных для каждой команды.
Далее: напишите запрос в SQL, чтобы перечислить имена помощников судей с указанием их стран для каждого матча.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code