Использование UNION в SQL запросах

Описание: Прочии темы
Модератор: Aleksandr

LILUS M
Автор темы, Старшина
Старшина
Аватара
LILUS M
Автор темы, Старшина
Старшина
Сообщения: 136
Зарегистрирован: 2 мая 2013
С нами: 10 лет 10 месяцев

#1 LILUS » 31 января 2014, 19:18

2012-08-04T10:39:00+00:00

Для объединения двух и более таблиц в результирующий вывод в SQL существует предложение UNION. В отличие от вложенных запросов в UNION запросы никоем образом не влияют друг на друга.


Для примера можно объеденить две таблици в результирующий вывод, таблицу клиентов и таблицу поставщиков, таким образом мы будем иметь список всех фирм которые присутствуют базе (может пригодится для рассылки)  Вы можете поместить многочисленные запросы вместе и объединить их вывод используя предложение UNION. Давайте посмотрим пример:


SELECT Name, Address 
FROM Suppliers

UNION

SELECT Name, Address
FROM Customers

ORDER BY 2;

в результате мы получаем список всех клиентов и поставщиков. Когда два или более запроса подвергаются объединению, их столбцы вывода должны быть совместимы для объединения. Это означает, что каждый запрос должен указывать одинаковое число столбцов и в том же порядке что и первый, второй, третий, и так далее, и каждый должен иметь тип, совместимый с каждым. Кроме того UNION будет автоматически исключать дубликаты строк из вывода. Вы также иожете упорядочить вывод с помощью ORDER BY, но так как в результирующем выводе отсутствуют названия столбцов, то следует задавать номер столбца в GROUP BY.


Надеюсь что статья была Вам полезна.


 



  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Прочее»

Кто сейчас на форуме (по активности за 5 минут)

Сейчас этот раздел просматривают: 6 гостей