Какое утверждение лучше всего описывает коррелированный подзапрос?

AКоррелированный подзапрос обязан находиться в FROM, иначе движок не свяжет его с внешней таблицей при выполнении
BКоррелированный подзапрос обязан использовать WITH, чтобы движок построил связь со строками внешнего запроса
CКоррелированный подзапрос ссылается на колонки внешнего запроса (например, o.user_id) и оценивается отдельно для каждой внешней строки
DКоррелированный подзапрос обязательно возвращает одну строку результата, иначе SQL выкидывает ошибку выполнения
Правильный ответ. Корреляция появляется, когда подзапрос использует алиасы или колонки из внешнего запроса.

Разбор

Некоррелированный подзапрос можно выполнить «сам по себе» и получить один результат или набор. Коррелированный зависит от текущей строки внешнего запроса: в нём есть ссылка на внешний алиас (например, o.user_id), поэтому логически он пересчитывается для каждой внешней строки. Это важно понимать, чтобы не забыть условие связи и не получить неверный результат.

Проверь себя · 1/3разбор после ответа
В отчёте нужно посчитать выручку по странам пользователей только по оплаченным заказам за период, причём шаг «оплаченные за период» используется ещё в трёх соседних метриках. Какой подход обычно делает запрос проверяемее и позволяет переиспользовать фильтрацию?
Тренировать SQL в Telegram

Ещё вопросы по теме «Подзапросы и CTE»