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

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

Разбор

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

Проверь себя · 1/3разбор после ответа
Нужно выбрать заказы, у которых amount выше среднего amount по тому же пользователю. Какой вариант WHERE корректно использует коррелированный подзапрос?
Тренировать SQL в Telegram

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