Selles õpetuses õpime kasutama SQL UNION-i klauslit, et kombineerida kahe või enama SELECT-lause tulemuse üheks tulemuskomplektiks.
Järgmine illustratsioon näitab SQL UNIONi päringu ülevaadet:
SQL UNION süntaks
Järgmine näitab süntaksit kahe valitud lause kombineerimiseks UNION-klausli abil:
VALI
veerg_1,
veerg_2,
...veerg_N
FROM
tbl_1
LIIT
VALI
veerg_1,
veerg_2,
...veerg_N
FROM
tbl_2;
Enne ametiühingupäringu sooritamist peavad olema täidetud järgmised nõuded:
- Igas select-lauses peab veergude arv olema identne.
- Igas select-lauses samal positsioonil olev veerg peab olema sarnase andmetüübiga.
- Veergude järjekord peab kõigis valitud lausetes olema õige.
Näitame, kuidas saame kasutada UNION-i päringut tegeliku tabeliga.
Tabel 1:
Järgmine näitab esimese tabeli veerge ja andmeid.
id|serveri_nimi |aadress |installitud_versioon|
--+-------------+--------------+------------------+
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 |
Tabel 2:
Teise tabeli struktuur ja kirjed on järgmised:
id|tööriist |versioon|litsentsitud |--+----------------------------+--------+----------- +
1|SQL Server Management Studio|18.0 |kommertslik|
2|Kibana |7.17.7 |tasuta |
3|DBeaver |22.2 |Ettevõte|
4|DataGrip |2022.2 |Kommertslik|
SQL UNION-i tabelid
Mõlema tabeli väärtustega saame teha UNION-operatsiooni, nagu on näidatud järgmises päringus:
VALISERVER_NAME,
INSTALLED_VERSION
FROM
STACK_MAPPING
LIIT
VALI
tööriist,
VERSION
FROM
ÜHENDUS;
See peaks päringud ühendama ja tagastama tabeli järgmiselt:
serveri_nimi |installitud_versioon|----------------------------+------------------+
SQL Server |15.0 |
Elastne otsing |8.4.3 |
Uuesti |6,0 |
PostgreSQL |14.5 |
SQL Server Management Studio|18.0 |
Kibana |7.17.7 |
DBeaver |22.2 |
DataGrip |2022.2 |
Järeldus
See artikkel pakub põhitõdesid SQL-i UNION-klausliga töötamiseks, et kombineerida kahe või enama SELECT-lause tulemuste kombineerimist. Lisateabe saamiseks vaadake julgelt teisi õpetusi.