SQL UNION

Sql Union



V tomto návode sa naučíme, ako použiť klauzulu SQL UNION na spojenie výsledku z dvoch alebo viacerých príkazov SELECT do jednej sady výsledkov.

Nasledujúca ilustrácia zobrazuje prehľad dotazu SQL UNION:









Syntax SQL UNION

Nasledujúci text ukazuje syntax pre kombináciu dvoch príkazov select pomocou klauzuly UNION:



VYBRAŤ
stĺpec_1,
stĺpec_2,
...stĺpec_N
OD
tbl_1
UNION

VYBRAŤ
stĺpec_1,
stĺpec_2,
...stĺpec_N
OD
tbl_2;

Pred vykonaním zjednocovacieho dotazu musia byť splnené nasledujúce požiadavky:





  1. Počet stĺpcov v každom príkaze select musí byť rovnaký.
  2. Stĺpec na rovnakej pozícii v každom príkaze select musí mať podobný typ údajov.
  3. Poradie stĺpcov musí byť správne vo všetkých vybraných príkazoch.

Ukážme si, ako môžeme použiť dopyt UNION so skutočnou tabuľkou.

Stôl 1:

Nasledujúci text zobrazuje stĺpce a údaje v prvej tabuľke:



id|názov_servera  |adresa       |inštalovaná_verzia|
--+-------------+--------------+-----------------+
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             |

Tabuľka 2:

Štruktúra a záznamy druhej tabuľky sú uvedené v nasledujúcom texte:

id|nástroj                        |verzia|licencovaná  |
--+----------------------------+-------+----------- +
1|SQL Server Management Studio|18.0   |komerčné|
2|Kibana                      |17.7.7 |zadarmo      |
3|DBeaver                     |22.2   |Podnik|
4|DataGrip                    |2022.2 |Komerčné|

SQL UNION tabuľky

Môžeme vykonať operáciu UNION na hodnotách oboch tabuliek, ako je znázornené v nasledujúcom dotaze:

VYBRAŤ
NÁZOV SERVERA,
INSTALLED_VERSION
OD
STACK_MAPPING
UNION
VYBRAŤ
NÁSTROJ,
VERZIA
OD
KONEKTOR;

To by malo spojiť dotazy a vrátiť tabuľku takto:

názov_servera                 |inštalovaná_verzia|
----------------------------+-----------------+
SQL Server                   |15.0             |
Elasticsearch               |8.4.3            |
Redis                       |6.0              |
PostgreSQL                  |14.5             |
SQL Server Management Studio|18.0             |
Kibana |17.7. |
DBeaver                     |22.2             |
DataGrip                    |2022.2           |

Záver

Tento článok poskytuje základy práce s klauzulou UNION v SQL na spojenie výsledkov dvoch alebo viacerých príkazov SELECT. Neváhajte a pozrite si ďalšie návody, kde nájdete viac.