MySQL
MySQL Союзы
Поиск…
Синтаксис
- SELECT column_name (s) FROM table1 UNION SELECT column_name (s) FROM table2;
- SELECT column_name (s) FROM table1 UNION ALL SELECT column_name (s) FROM table2;
- SELECT column_name (s) FROM table1 WHERE col_name = "XYZ" UNION ALL SELECT column_name (s) FROM table2 WHERE col_name = "XYZ";
замечания
UNION DISTINCT
- это то же самое, что UNION
; он медленнее, чем UNION ALL
из-за де-дублирования. Хорошая практика заключается в том, чтобы всегда указывать DISTINCT
или ALL
, тем самым сигнализируя, что вы думали о том, что делать.
Союзный оператор
Оператор UNION используется для объединения набора результатов ( только отдельных значений ) двух или более операторов SELECT.
Запрос: (Чтобы выбрать все разные города ( только отдельные значения ) из таблиц «Клиенты» и «Поставщики»)
SELECT City FROM Customers
UNION
SELECT City FROM Suppliers
ORDER BY City;
Результат:
Number of Records: 10
City
------
Aachen
Albuquerque
Anchorage
Annecy
Barcelona
Barquisimeto
Bend
Bergamo
Berlin
Bern
Союз ВСЕ
UNION ALL, чтобы выбрать все (дублирующие значения) города из таблиц «Клиенты» и «Поставщики».
Запрос:
SELECT City FROM Customers
UNION ALL
SELECT City FROM Suppliers
ORDER BY City;
Результат:
Number of Records: 12
City
-------
Aachen
Albuquerque
Anchorage
Ann Arbor
Annecy
Barcelona
Barquisimeto
Bend
Bergamo
Berlin
Berlin
Bern
СОЮЗ ВСЕ С ГДЕ
UNION ALL для выбора всех (повторяющихся значений) также городов Германии из таблиц «Клиенты» и «Поставщики». Здесь Country="Germany"
указывается в предложении where.
Запрос:
SELECT City, Country FROM Customers
WHERE Country='Germany'
UNION ALL
SELECT City, Country FROM Suppliers
WHERE Country='Germany'
ORDER BY City;
Результат:
Number of Records: 14
город | Страна |
---|---|
Aachen | Германия |
Берлин | Германия |
Берлин | Германия |
Бранденбург | Германия |
Cunewalde | Германия |
Куксхавен | Германия |
Франкфурт | Германия |
Frankfurt aM | Германия |
Köln | Германия |
Лейпциг | Германия |
Mannheim | Германия |
München | Германия |
Münster | Германия |
Штутгарт | Германия |