I denne opplæringen lærer vi hvordan du bruker SQL UNION-leddet til å kombinere resultatet fra to eller flere SELECT-setninger til et enkelt resultatsett.
Følgende illustrasjon viser oversikten over en SQL UNION-spørring:
SQL UNION-syntaks
Følgende viser syntaksen for å kombinere to utvalgssetninger ved å bruke en UNION-klausul:
Å VELGE
col_1,
col_2,
...col_N
FRA
tbl_1
UNION
Å VELGE
col_1,
col_2,
...col_N
FRA
tbl_2;
Før du utfører en fagforeningsforespørsel, må følgende krav være oppfylt:
- Antall kolonner i hver utvalgssetning må være identisk.
- Kolonnen i samme posisjon i hver select-setning må være av lignende datatype.
- Rekkefølgen på kolonnene må være riktig i alle utvalgte utsagn.
La oss illustrere hvordan vi kan bruke en UNION-spørring med en faktisk tabell.
Tabell 1:
Følgende viser kolonnene og dataene i den første tabellen:
id|server_navn |adresse |installert_versjon|
--+------------+--------------+----------------+
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 |
Tabell 2:
Strukturen og postene til den andre tabellen er som vist i følgende:
id|verktøy |versjon|lisensiert |--+----------------------------+-------+---------------- +
1|SQL Server Management Studio|18.0 |kommersiell|
2|Kibana |7.17.7 |gratis |
3|DBeaver |22.2 |Bedrift|
4|DataGrip |2022.2 |Kommersiell|
SQL UNION-tabeller
Vi kan utføre en UNION-operasjon på verdiene til begge tabellene som vist i følgende spørring:
Å VELGESERVER NAVN,
INSTALLERT_VERSJON
FRA
STACK_MAPPING
UNION
Å VELGE
VERKTØY,
VERSJON
FRA
KONTAKT;
Dette bør kombinere søkene og returnere en tabell som følger:
server_name |installed_version|----------------------------+-----------------+
SQL Server |15.0 |
Elasticsearch |8.4.3 |
Redis |6.0 |
PostgreSQL |14.5 |
SQL Server Management Studio|18.0 |
Kibana |7.17.7 |
DBeaver |22.2 |
DataGrip |2022.2 |
Konklusjon
Denne artikkelen gir det grunnleggende om å arbeide med UNION-leddet i SQL for å kombinere resultatene av to eller flere SELECT-setninger. Sjekk gjerne de andre veiledningene for mer.