Ещё больше полезных шпаргалок, разборов SQL-задач и хитростей, которые спрашивают на собеседованиях, я публикую в своем Telegram-канале. Залетайте, чтобы не ронять продовые базы: 👉 https://t.me/gdejoin YouTube - https://www.youtube.com/@GdeJOIN
Когда нам нужно приклеить одну таблицу к другой сбоку (например, к сотруднику приклеить его отдел), мы используем старый добрый JOIN. А вот когда нужно приклеить одну таблицу снизу (просто докинуть новые строки к старым), мы берем UNION. Казалось бы, всё просто, как дважды два: SELECT name FROM customers
UNION
SELECT name FROM suppliers; Перевод: «Дай мне имена всех клиентов и снизу припиши имена всех поставщиков». Но тут есть подвох. В SQL есть два способа сделать это: UNION и UNION ALL. И разница между ними всего в три буквы, но цена ошибки — зависший отчет или «упавший» сервер. 📉 Давайте разберем, в чем соль. Когда вы пишете просто UNION, SQL-сервер не просто берет и склеивает две таблицы. Он начинает «умничать» и делать скрытую работу: И