Перейти к содержимому

Вопросы по SQL JOIN на собеседовании: ловушки LEFT JOIN, Anti Join, Self Join | Реальные задачи #2

TechBrothersIT

0:00 / 0:00

Вопросы по SQL JOIN на собеседовании: ловушки LEFT JOIN, Anti Join, Self Join | Реальные задачи #2

32 просмотра · 7 ч назад
TechBrothersIT
105 тыс. подписчиков
32 просмотра · 7 ч назад
Вопросы для собеседования по SQL с примерами запросов и реальными результатами: INNER JOIN, LEFT JOIN и FULL OUTER JOIN, клиенты, которые никогда не делали заказов, почему количество строк увеличивается после объединения, ловушка ON и WHERE, самообъединения для менеджеров, месячная сетка с нулями и объединение платежей, которое завышает выручку. ВОПРОСЫ ДЛЯ СОБЕСЕДОВАНИЯ В ЭТОМ ВИДЕО 1. Отдел кадров хочет получить список всех отделов с их сотрудниками, включая отдел, в котором никого нет, и сотрудников, которые еще не определились с отделом. В чем разница между INNER JOIN, LEFT JOIN и FULL OUTER JOIN, и какой из них дает такой список? 2. Отдел маркетинга хочет отправить электронные письма клиентам, которые никогда не делали заказов. Как найти их в SQL? 3. Вы объединили 7 клиентов с их заказами и получили 13 строк. Почему количество строк увеличилось, и когда это становится ошибкой? 4. Менеджер хочет получить данные по каждому клиенту вместе с отправленными заказами, если таковые имеются, но ваш запрос LEFT JOIN возвращает только 2 клиента. В чем разница между использованием фильтра ON и WHERE? 5. Отдел кадров запрашивает данные по каждому сотруднику с указанием имени его руководителя, а затем данные о сотрудниках, которые зарабатывают больше своего руководителя. Как правильно составить оба запроса? 6. В ежемесячном отчете о продажах отсутствуют данные за месяцы без продаж по определенной категории, поэтому на графике есть пробелы. Как построить полную таблицу по категориям за месяц, в которой пустые месяцы будут отображаться как 0? 7. Финансовый отдел сообщает, что выручка выросла после объединения заказов и платежей: 4050 вместо 3400. Почему это произошло и как это исправить? ЧТО ВЫ УЗНАЕТЕ • ВНУТРЕННЕЕ, ЛЕВОЕ И ПОЛНОЕ ВНЕШНЕЕ СОЕДИНЕНИЕ с подсчетом строк • Анти-соединение: ЛЕВОЕ СОЕДИНЕНИЕ ... IS NULL против NOT EXISTS • Веерное соединение «один ко многим»: почему увеличивается количество строк • ЛЕВОЕ СОЕДИНЕНИЕ: почему фильтр WHERE превращает его во ВНУТРЕННЕЕ СОЕДИНЕНИЕ • Самосоединение: сотрудник, менеджер и кто зарабатывает больше • ПЕРЕКРЕСТНОЕ СОЕДИНЕНИЕ календаря для отображения месяцев с нулевыми продажами • Сценарий: доход завышен из-за разделенной оплаты, исправлено путем агрегирования сначала или EXISTS РАЗДЕЛЫ 0:00 Введение 0:27 ВНУТРЕННЕЕ, ЛЕВОЕ, ПОЛНОЕ СОЕДИНЕНИЕ 1:35 Клиенты, которые никогда не делали заказов 2:33 Почему увеличилось количество строк 3:34 ON или WHERE? 4:34 Самостоятельное соединение 5:33 Перекрестное соединение для полной сетки 6:36 Доход вырос после соединения 7:43 Итоги ПРИМЕРЫ ДАННЫХ И SQL Каждый запрос в этом видео, скрипт с примерами данных и реальный результат каждого запроса находятся в статье блога, так что вы можете скопировать и попрактиковаться: https://www.techbrothersit.com/2026/1... СЛЕДУЮЩЕЕ ВИДЕО Вопросы и ответы по SQL для собеседования №3: GROUP BY и агрегирование ▶ Полный плейлист вопросов и ответов по SQL для собеседования:    • SQL Interview Questions and Answers (Real-...   📘 Все 70 вопросов по SQL в блоге: https://www.techbrothersit.com/p/sql-... 🔔 Подпишитесь на канал TechBrothersIT, чтобы получать больше уроков по SQL и инженерии данных. #SQL #SQLJoins #SQLInterview #DataEngineering #PostgreSQL #InterviewQuestions #TechBrothersIT