SQL UNION

Sql Union



В този урок ще научим как да използваме клаузата SQL UNION, за да комбинираме резултата от две или повече инструкции SELECT в един резултатен набор.

Следната илюстрация показва общ преглед на SQL UNION заявка:









Синтаксис на SQL UNION

Следното показва синтаксиса за комбиниране на два оператора за избор с помощта на клауза UNION:



ИЗБЕРЕТЕ
col_1,
col_2,
...col_N
ОТ
tbl_1
СЪЮЗ

ИЗБЕРЕТЕ
col_1,
col_2,
...col_N
ОТ
tbl_2;

Преди да изпълните запитване за обединение, трябва да бъдат изпълнени следните изисквания:





  1. Броят на колоните във всеки оператор за избор трябва да бъде идентичен.
  2. Колоната на същата позиция във всеки оператор за избор трябва да бъде от подобен тип данни.
  3. Редът на колоните трябва да е правилен във всички оператори за избор.

Нека да илюстрираме как можем да използваме UNION заявка с действителна таблица.

Маса 1:

Следното показва колоните и данните в първата таблица:



id|име на_сървър  |адрес       |инсталирана_версия|
--+-------------+--------------+------------------+
1|SQL Server   |localhost:1433|15.0             |
2|Elasticsearch|localhost:9200|8.4.3            |
3|Redis        |localhost:6379|6.0              |
4|PostgreSQL   |localhost:5432|14.5             |

Таблица 2:

Структурата и записите на втората таблица са както е показано по-долу:

id|инструмент                        |версия|лицензиран  |
--+--------------------------+-------+---------- +
1|SQL Server Management Studio|18.0   |комерсиален|
2|Kibana                      |7.17.7 |безплатно      |
3|DBaver                     |22.2   |Предприятие|
4|DataGrip                    |2022.2 |Търговски|

SQL UNION таблици

Можем да извършим операция UNION върху стойностите на двете таблици, както е показано в следната заявка:

ИЗБЕРЕТЕ
ИМЕ НА СЪРВЪРА,
INSTALLED_VERSION
ОТ
STACK_MAPPING
СЪЮЗ
ИЗБЕРЕТЕ
ИНСТРУМЕНТ,
ВЕРСИЯ
ОТ
СЪЕДИНИТЕЛ;

Това трябва да комбинира заявките и да върне таблица, както следва:

сървър_име                 |инсталирана_версия|
----------------------------+----------------+
SQL Server                  |15.0             |
Elasticsearch               |8.4.3            |
Redis                       |6.0              |
PostgreSQL                  |14.5             |
SQL Server Management Studio|18.0             |
Кибана |7.17.7 |
DBeaver                     |22.2             |
DataGrip                    |2022.2           |

Заключение

Тази статия предоставя основите на работа с клаузата UNION в SQL за комбиниране на резултатите от два или повече израза SELECT. Чувствайте се свободни да проверите другите уроци за повече.