Підзапит vs INNER JOIN
Часто результати корельованого підзапиту можна відтворити за допомогою INNER JOIN. Залежно від ваших потреб, використання INNER JOIN може бути ефективнішим, адже він проходить по даних лише один раз, тоді як корельований підзапит виконується для кожного рядка зовнішнього запиту.
Вам потрібно дізнатися чисельність населення у 2017 році найбільшого міста для кожної країни світу. Ці дані можна отримати з бази Earthquakes, використовуючи таблицю Nations як зовнішній запит і таблицю Cities у підзапиті.
Спочатку створіть цей запит як корельований підзапит, а потім перепишіть його з використанням INNER JOIN.
Ця вправа є частиною курсу
Покращення продуктивності запитів у SQL Server
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
SELECT
n.CountryName,
(SELECT MAX(c.___) -- Add 2017 population column
FROM Cities AS c
-- Outer query country code column
WHERE c.CountryCode = n.___) AS BiggestCity
FROM ___ AS n; -- Outer query table