58просмотров
47.9%от подписчиков
18 марта 2026 г.
📷 ФотоScore: 64
🔹 Подзапросы в SQL 🔹 Где можно ставить subquery и зачем? 🔸 subquery в SQL (Structured Query Language) позволяет вложить один запрос в другой, чтобы вычислить критерий или агрегат без множества временных таблиц. 🔸 В WHERE используются для фильтрации по набору (IN/EXISTS) когда условие зависит от другой таблицы. 🔸 В FROM — как derived table (временная таблица) для дальнейшей агрегации. В SELECT — скалярный subquery для одного вычисленного значения. WITH (CTE: Common Table Expression) делает такие шаги читаемыми и переиспользуемыми. 🔸 Performance: субзапросы удобны, но JOIN или WITH часто дают лучший план. Сравнивайте план выполнения и заменяйте subquery на JOIN, если видите тормоза. -- WHERE
SELECT FROM orders WHERE customer_id IN (SELECT id FROM customers WHERE vip=1); -- FROM
SELECT t.customer_id, SUM(t.amount) FROM (SELECT customer_id, amount FROM orders) AS t GROUP BY t.customer_id; -- SELECT scalar
SELECT id, (SELECT COUNT() FROM orders o WHERE o.customer_id=c.id) AS orders_cnt FROM customers c; 📚 Используйте WITH для читаемости; тестируйте performance и меняйте на JOIN при необходимости. #CODERIKK #Sql #Middle ➡️ Мы в Telegram - Сетке - Дзен
Буду рад вашей реакции здесь⬇️