Фильтрация с помощью подзапроса, возвращающего список
В этом упражнении вам нужно сформировать список команд, которые никогда не проводили домашние игры в своём городе. С помощью подзапроса вы получите список уникальных значений hometeam_ID из таблицы match без фильтрации — чтобы затем исключить их из столбца team_api_ID таблицы team.
Помимо фильтрации с использованием скалярного подзапроса (возвращающего одно значение), можно формировать список значений в подзапросе для фильтрации данных по сложному набору условий. Такой подзапрос создаёт список значений из одного столбца для основного запроса. Если значения из этого списка соответствуют столбцу в таблице основного запроса, соединение таблиц не потребуется — даже если список получен из другой таблицы.
Это упражнение является частью курса
Манипуляции с данными в SQL
Инструкции к упражнению
- Создайте подзапрос в секции
WHERE, который извлекает все уникальные значенияhometeam_idиз таблицыmatch. - Выберите поля
team_long_nameиteam_short_nameиз таблицыteam. Исключите из основного запроса все значения, возвращённые подзапросом.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
SELECT
-- Select the team long and short names
___,
___
FROM ___
-- Exclude all values from the subquery
WHERE team_api_id ___ ___
(___ DISTINCT ___ FROM ___);