Что такое подзапрос в БД

Python Middle Без компании
Что такое подзапрос в БД
Ответы
Подзапрос (subquery) — это SQL-запрос, вложенный внутрь другого запроса (SELECT, INSERT, UPDATE, DELETE). Он выполняется первым, а его результат используется внешним запросом. Подзапросы могут быть в WHERE, FROM, SELECT и других частях основного запроса. Пример с WHERE: ``` SELECT name FROM users WHERE id IN (SELECT user_id FROM orders WHERE total > 1000); ``` Пример с FROM: ``` SELECT avg(sub.total) FROM (SELECT SUM(amount) as total FROM payments GROUP BY user_id) sub; ``` Типы подзапросов: - Коррелированные (зависят от внешнего запроса) - Некоррелированные (выполняются независимо) - Скалярные (возвращают одно значение) - Табличные (возвращают набор строк) Подзапросы могут ухудшать производительность на больших таблицах, поэтому иногда лучше использовать JOIN.