sammanfattning: i den här handledningen lär du dig hur du använder SQL Server UNION
för att kombinera resultaten av två eller flera frågor till en enda resultatuppsättning.
introduktion till SQL Server UNION
SQL ServerUNION
är en av de inställda operationer som gör att du kan kombinera resultaten av tvåSELECT
– satser till en enda resultatuppsättning som innehåller alla rader som tillhörSELECT
– satserna i unionen.,
följande illustrerar syntaxen för SQL Server UNION
:
Code language: SQL (Structured Query Language) (sql)
Följande är krav för frågorna i syntaxen ovan:
- kolumnernas nummer och ordning måste vara desamma i båda frågorna.
- datatyperna för motsvarande kolumner måste vara desamma eller kompatibla.
följande Venn-diagram visar hur resultatuppsättningen av T1-tabellföreningarna med resultatuppsättningen i T2-tabellen:
UNION vs., UNION ALL
som standard tar UNION
– operatören bort alla dubbla rader från resultatuppsättningarna. Om du vill behålla dubblettraderna måste du dock ange nyckelordet ALL
som visas nedan:
Code language: SQL (Structured Query Language) (sql)
med andra ord tar operatören UNION
bort dubblettraderna medan operatören UNION ALL
inkluderar dubblettraderna i slutresultatet.
Union vs., Gå med
kopplingen som INNER JOIN
eller LEFT JOIN
kombinerar kolumner från två tabeller medan UNION
kombinerar rader från två frågor.
med andra ord lägger join till resultatuppsättningarna horisontellt medan union lägger till resultatet vertikalt.,div id=”7f8c7e0c1a”>
SQL Server UNION examples
See the following staffs
and customers
tables from the sample database:
UNION and UNION ALL examples
The following example combines names of staffs and customers into a single list:
It returns 1,454 rows.,
tabellenstaffs
har 10 rader och tabellen Kunder har 1 445 rader som visas i följande frågor:
eftersom resultatuppsättningen i facket returnerar endast 1 454 rader betyder det att en dubblett rad har tagits bort.
för att inkludera den dubbla raden använder du UNION ALL
som visas i följande fråga:
frågan returnerar 1 455 rader som förväntat.,
UNION och ORDER BY example
för att sortera resultatuppsättningen som returneras av UNION
– operatören placerar du ORDER BY
– klausulen i den sista frågan enligt följande:
Code language: SQL (Structured Query Language) (sql)
för att till exempel Sortera första namn och efternamn på kunder och personal använder du följande fråga:
i den här handledningen har du lärt dig hur du använder SQL Server UNION
för att kombinera rader från flera frågor till en enda resultatuppsättning.