Выбор ответа Junior Подзапросы и CTE спрашивают часто обновлено
UNION и UNION ALL
Вопрос
Чем UNION отличается от UNION ALL?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: UNION убирает дубли (ценой сортировки), UNION ALL просто склеивает. UNION возвращает множество без повторов, поэтому выполняет дополнительную работу.
Варианты ответа
- UNION ALL убирает дубликаты, а UNION оставляет все строки
- UNION соединяет таблицы по ключу, UNION ALL без ключа
- Разницы нет: ALL устаревший синоним, оставленный для совместимости
- UNION убирает дубли (ценой сортировки), UNION ALL просто склеиваетправильный ответ
Разбор
UNION возвращает множество без повторов, поэтому выполняет дополнительную работу. Если дублей быть не может или они нужны, пишут UNION ALL: это дешевле. Соединение «по ключу» это JOIN, а не UNION. Слово ALL меняет смысл, синонимом оно не является.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Термины по теме
Ещё по теме «Подзапросы и CTE»
- Полный путь категории в дереве
- Клиенты, у которых все заказы оплачены
- Дни без продаж по регионам
- Цепочка руководителей вверх по дереву
- Дороже любой книги: ALL против MAX
- Категория с максимальной выручкой
- Два последних заказа каждого клиента через LATERAL
- Дороже среднего по своей категории