SQL Union - kompleksowy przewodnik po operatorze UNION



Ten artykuł zawiera szczegółowy przewodnik dotyczący korzystania z operatora SQL UNION. W tym artykule omówiono różnice między UNION i UNION ALL z przykładami.

Obsługując dane w bazach danych, często używamy operatorów zbiorów w SQL , aby pobrać dane zgodnie z naszymi wymaganiami, łącząc dwie lub więcej instrukcji SELECT. W tym artykule o SQL UNION omówię operator UNION używany do pobierania danych w następującej kolejności:

Zaczynajmy!





Co to jest operator SQL UNION?

Jak sama nazwa wskazuje, ten operator / klauzula służy do łączenia wyników dwóch lub więcej instrukcji SELECT. Tutaj każda instrukcja SELECT używana w instrukcji UNION musi mieć taką samą liczbę kolumn w tej samej kolejności. Ponadto wszystkie kolumny obecne w instrukcjach SELECT muszą mieć podobne typy danych.

Klauzula UNION podaje tylko unikalne wartości jako dane wyjściowe. Na wszelki wypadek chcesz zduplikowanych wartości, musisz użyć klauzuli UNION ALL.



Przechodząc dalej w tym artykule o SQL UNION, pozwól nam zrozumieć składnię.

w puli stałych łańcuchów nie będzie dwóch obiektów typu string o tej samej zawartości.

Składnia SQL UNION

Składnia UNION

SELECT Column1, Column2, Column3, ..., ColumnN FROM Table1 UNION SELECT Column1, Column2, Column3, ..., ColumnN FROM Table2

Składnia UNION ALL

SELECT Column1, Column2, Column3, ..., ColumnN FROM Table1 UNION ALL SELECT Column1, Column2, Column3, ..., ColumnN FROM Table2

Przechodząc dalej w tym artykule, pozwól nam zrozumieć różnice między UNION a UNION ALL.

Różnice między SQL UNION i UNION ALL



UNIA UNIA WSZYSTKO
Łączy dwa lub więcej zestawów wyników i nie zachowuje zduplikowanych wartości.Łączy dwa lub więcej zestawów wyników i zachowuje zduplikowane wartości.
 Składnia: UNIA
 Składnia: UNIA WSZYSTKO
SQL UNION -SQL UNION -Edureka

Następnie w tym artykule na temat SQL UNION pozwól nam zrozumieć różne sposoby korzystania z tego operatora.

Przykłady SQL UNION i UNION ALL

Dla lepszego zrozumienia rozważę poniższe tabele, aby pokazać różne przykłady.

Tabela pracowników

EmpID Nazwa EmpAge Miasto Kod pocztowy Kraj
jedenEmma2. 3Berlin12109Niemcy
2Rahul26Bombaj400015Indie
3Aayra24Nowy Jork10014ZASTOSOWANIA
4Jan32LondynE1 7AEUK
5Derek29Nowy Jork10012ZASTOSOWANIA

Tabela projektów

ProjectID Nazwa Dni robocze Miasto Kod pocztowy Kraj
jedenProjekt 110Berlin12109Niemcy
2Projekt 27Bombaj400015Indie
3Projekt 3dwadzieściaDelhi110006Indie
4Projekt 4piętnaścieBombaj400015Indie
5Projekt 528Berlin12109Niemcy

Zacznijmy od przykładów.

Przykłady SQL UNION

Przykład operatora UNION

Napisz zapytanie, aby pobrać różne miasta z tabeli Pracownicy i projekty.

WYBIERZ miasto od pracowników UNIA WYBIERZ miasto z projektów KOLEJNOŚĆ WEDŁUG MIAST

Wynik:

Miasto

Berlin

Delhi

Londyn

Bombaj

Nowy Jork

Przykład operatora UNION ALL

Napisz zapytanie, aby pobrać miasta z tabeli Pracownicy i projekty. Tutaj należy uwzględnić zduplikowane wartości.

WYBIERZ miasto Z UNII pracowników WSZYSTKIE WYBIERZ miasto z projektów KOLEJNOŚĆ WEDŁUG MIAST

Wynik:

Miasto

Berlin

Berlin

Berlin

Delhi

Londyn

Bombaj

Bombaj

Bombaj

Nowy Jork

Nowy Jork

W dalszej części tego artykułu wyjaśnijmy, jak używać klauzuli UNION z aliasami SQL.

UNION z aliasami SQL

Używane są aliasy SQLaby nadać tabeli lub kolumnie tymczasową nazwę. Napiszmy więc zapytanie, aby wyświetlić wszystkich unikalnych pracowników i projekty.

WYBIERZ 'Pracownik' JAKO Typ, Imię, Miasto, Kraj Z Pracowników UNIA WYBIERZ 'Projekt', Imię, Miasto, Kraj Z Projektów

Wynik:

Rodzaj Nazwa Miasto Kraj
PracownikEmmaBerlinNiemcy
PracownikRahulBombajIndie
PracownikAayraNowy JorkZASTOSOWANIA
PracownikJanLondynUK
PracownikDerekNowy JorkZASTOSOWANIA
ProjektProjekt 1BerlinNiemcy
ProjektProjekt 2BombajIndie
ProjektProjekt 3DelhiIndie
ProjektProjekt 4BombajIndie
ProjektProjekt 5BerlinNiemcy

UNION z klauzulą ​​WHERE

Napisz zapytanie, aby pobrać poszczególne miasta Indii i ich kody pocztowe z tabeli Pracownicy i Projekty.

WYBIERZ miasto, kod pocztowy, kraj FROM Employees WHERE Country = 'India' UNION SELECT City, PostalCode, Country FROM Projects WHERE Country = 'India' ORDER BY City

Wynik:

Miasto Kod pocztowy Kraj
Delhi110006Indie
Bombaj400015Indie

UNION ALL z klauzulą ​​WHERE

Napisz zapytanie, aby pobrać indyjskie miasta i ich kody pocztowe z tabeli Pracownicy i Projekty, w której zduplikowane wartości są dozwolone

WYBIERZ miasto, kod pocztowy, kraj OD pracowników WHERE Kraj = 'Indie' UNIA WSZYSTKO WYBIERZ miasto, kod pocztowy, kraj Z projektów GDZIE Kraj = 'Indie' ZAMÓW WEDŁUG MIASTA

Wynik:

Miasto Kod pocztowy Kraj
Delhi110006Indie
Bombaj400015Indie
Bombaj400015Indie
Bombaj400015Indie

Przechodząc dalej w tym artykule, pozwól nam zrozumieć, jak używać klauzul UNION i UNION ALL z JOINS.POŁĄCZENIA w SQL są które są używane do łączenia wierszy z dwóch lub więcej tabel na podstawie powiązanej kolumny między tymi tabelami.

UNIA z JOINS

Operator SQL UNION może być używany z do pobierania danych z dwóch różnych tabel. W przykładzie rozważę poniższą tabelę wraz z tabelą Pracownicy.

jak używać przycinania w java

Tabela ProjectDetails

PID Dni robocze EmpID CostforProject
jedenaście12420000
2216335000
3330jeden60000
4425345000
55dwadzieścia jedenjeden50 000
SELECT EmpID, Name, CostforProject FROM Employees LEFT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID UNION SELECT EmpID, Name, CostforProject FROM Employees RIGHT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID

Wynik:

EmpID Nazwa CostforProject
jedenEmma60000
jedenEmma50 000
2RahulZERO
3Aayra35000
3Aayra45000
4Jan20000
5DerekZERO

UNION WSZYSTKO Z POŁĄCZENIAMI

Napisz zapytanie, aby pobrać EmpID, Name i CostforProject z tabeli Employees i ProjectDetails, w której dozwolone są zduplikowane wartości.

SELECT EmpID, Name, CostforProject FROM Employees LEFT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID UNION ALL SELECT EmpID, Name, CostforProject FROM Employees RIGHT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID

Wynik:

EmpID Nazwa CostforProject
jedenEmma60000
jedenEmma50 000
2RahulZERO
3Aayra35000
3Aayra45000
4Jan20000
5DerekZERO
4Jan20000
3Aayra35000
jedenEmma60000
3Aayra35000
jedenEmma50 000

W ten sposób dochodzę do końca tego artykułu o SQL UNION. Mam nadzieję, że podobał Ci się ten artykuł o SQL UNION. Widzieliśmy różne sposoby użycia poleceń UNION i UNION ALL, które pomagają w pisaniu zapytań. Jeśli chcesz dowiedzieć się więcej o MySQL i poznaj tę relacyjną bazę danych typu open source, a następnie sprawdź naszą który obejmuje szkolenie na żywo prowadzone przez instruktora i rzeczywiste doświadczenie projektowe. To szkolenie pomoże Ci dogłębnie zrozumieć MySQL i osiągnąć mistrzostwo w tym temacie.

Masz do nas pytanie? Wspomnij o tym w sekcji komentarzy w „SQL UNION”, a skontaktuję się z Tobą.