Оператор SQL UNION объединяет результат двух или более заявлений на SELECT.
SQL UNION Оператор
Оператор UNION используется для объединения множества результатов двух или более заявлений на SELECT.
Обратите внимание на то, что каждый оператор ЗЕЬЕСТ внутри Союза должны иметь одинаковое число столбцов. Столбцы также должны иметь одинаковые типы данных. Кроме того, столбцы в каждом ЗЕЬЕСТ должны быть в том же самом порядке.
SQL UNION Синтаксис
SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2 ;
Note: Оператор UNION выбирает только различные значения по умолчанию. Чтобы разрешить повторяющиеся значения, используйте ключевое слово ALL с UNION.
SQL UNION ALL Синтаксис
SELECT column_name(s) FROM table1
UNION ALL
SELECT column_name(s) FROM table2 ;
PS: Имена столбцов в результатах запросов, союзной, как правило , равны именам столбцов в первом ЗЕЬЕСТ в Союзе.
Демо-версия базы данных
В этом уроке мы будем использовать хорошо известную базу данных Борей.
Ниже приводится подборка из "Customers" таблицы:
Пользовательский ИД | Имя Клиента | Контактное лицо | Адрес | город | Почтовый индекс | Страна |
---|---|---|---|---|---|---|
1 |
Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitucion 2222 | Mexico D.F. | 05021 | Mexico |
3 | Antonio Moreno Taqueria | Antonio Moreno | Mataderos 2312 | Mexico D.F. | 05023 | Mexico |
И выбор из "Suppliers" таблицы:
SupplierID | Наименование поставщика | Контактное лицо | Адрес | город | Почтовый индекс | Страна |
---|---|---|---|---|---|---|
1 | Экзотические Liquid | Шарлотта Купер | 49 Гилберта St. | Лондон | EC1 4SD | Великобритания |
2 | Новый Орлеан Cajun наслаждений | Shelley Берк | PO Box 78934 | Жители Нового Орлеана | 70117 | США |
3 | Homestead Бабушка Келли | Regina Мерфи | 707 Oxford Rd. | Ann Arbor | 48104 | США |
SQL UNION Пример
Следующий SQL - оператор выбирает все различные города (только отдельные значения) от "Customers" и "Suppliers" таблиц:
Note: UNION не может быть использован для просмотра списка всех городов из двух таблиц. Если несколько клиентов и поставщиков, одни и те же города, каждый город будет указан только один раз. UNION выбирает только определенные значения. Использование UNION ALL также выбрать повторяющиеся значения!
SQL UNION ALL Пример
Следующий SQL - оператор использует UNION ALL для выбора всех (значения дубликатов) также городов от "Customers" и "Suppliers" таблиц:
SQL UNION ALL С WHERE
Следующий SQL - оператор использует UNION ALL для выбора всех (значения дубликатов) также немецкие города от "Customers" и "Suppliers" таблиц:
пример
SELECT City, Country FROM Customers
WHERE Country='Germany'
UNION ALL
SELECT City, Country FROM Suppliers
WHERE Country='Germany'
ORDER BY
City;
Попробуй сам "