Różnica między JOIN a UNION w SQL
Zawartość
JOIN i UNION to klauzule w SQL, używane do łączenia danych dwóch lub więcej relacji. Ale sposób, w jaki łączą dane i format uzyskanego wyniku, jest różny. The PRZYSTĄP klauzula łączy atrybuty dwóch relacji, tworząc powstałe krotki, podczas gdy UNIA klauzula łączy wynik dwóch zapytań. Omówmy różnicę między JOIN a UNION za pomocą tabeli porównawczej pokazanej poniżej.
- Wykres porównania
- Definicja
- Kluczowe różnice
- Wniosek
Wykres porównania
Podstawa do porównania | PRZYSTĄP | UNIA |
---|---|---|
Podstawowy | DOŁĄCZ łączy atrybuty krotek obecnych w dwóch różnych relacjach, które mają wspólne wspólne pola lub atrybuty. | UNION łączy krotki relacji obecnych w zapytaniu. |
Stan | DOŁĄCZ ma zastosowanie, gdy dwie zaangażowane relacje mają co najmniej jeden wspólny atrybut. | UNION ma zastosowanie, gdy liczba kolumn obecnych w zapytaniu jest taka sama, a odpowiednie atrybuty mają tę samą domenę. |
Rodzaje | WEWNĘTRZNY, PEŁNY (ZEWNĘTRZNY), LEWY DOŁĄCZ, PRAWY DOŁĄCZ. | UNIA i UNION WSZYSTKO. |
Efekt | Długość powstałych krotek jest większa w porównaniu do długości krotek powiązanych relacji. | Liczba wynikowych krotek jest większa w porównaniu do liczby krotek obecnych w każdej relacji uczestniczącej w zapytaniu. |
Diagram |
|
Definicja DOŁĄCZENIA
PRZYSTĄP klauzula w SQL łączy krotki z dwóch relacji lub tabel, co skutkuje dłuższym krotkiem. Powstała krotka zawiera atrybuty obu relacji. Atrybuty są łączone na podstawie wspólnych atrybutów między nimi. Różne typy JOIN w SQL są ŁĄCZENIE WEWNĘTRZNE, ŁĄCZENIE W LEWO, ŁĄCZENIE W PRAWO, ŁĄCZENIE ZEWNĘTRZNE.
DOŁĄCZ DO WEWNĘTRZNEGO łączy krotki z obu tabel, o ile istnieje wspólny atrybut między nimi. LEWE DOŁĄCZ powoduje wszystkie krotki z lewej tabeli i pasujące krotki z prawej tabeli. PRAWE DOŁĄCZ powoduje wszystkie krotki z prawej tabeli i tylko pasujące krotki z lewej tabeli. DOŁĄCZ DO ZEWNĘTRZNEGO powoduje wszystkie krotki z obu tabel, chociaż mają pasujące atrybuty lub nie.
WEJŚCIE DO WEJŚCIA jest takie samo jak DOŁĄCZENIE. Możesz także upuścić słowo kluczowe INNER i po prostu użyć ŁĄCZENIA, aby wykonać ŁĄCZENIE WEWNĘTRZNE.
Definicja UNII
UNION to ustawiona operacja w SQL. UNON łączy wynik dwóch zapytań. Wynik UNION obejmuje krotki z obu relacji obecnych w zapytaniu. Warunki, które muszą zostać spełnione, to UNIA dwóch stosunków:
- Te dwie relacje muszą mieć tę samą liczbę atrybutów.
- Domeny odpowiedniego atrybutu muszą być takie same.
Istnieją dwa rodzaje UNII UNIA i UNION ALL. Wynik uzyskany przy użyciu UNION nie obejmuje duplikatów. Z drugiej strony wynik uzyskany przy użyciu UNION ALL zachowuje duplikat.
- Podstawowa różnica między JOIN a UNION polega na tym, że JOIN łączy krotki z dwóch relacji, a powstałe krotki zawierają atrybuty z obu relacji. Z drugiej strony UNION łączy wynik dwóch zapytań SELECT.
- Klauzula JOIN ma zastosowanie tylko wtedy, gdy dwie powiązane relacje mają co najmniej jeden wspólny atrybut w obu. Z drugiej strony UNIA ma zastosowanie, gdy dwie relacje mają tę samą liczbę atrybutów, a domeny odpowiadających im atrybutów są takie same.
- Istnieją cztery typy ŁĄCZENIA WEWNĘTRZNEGO, ŁĄCZENIA W LEWO, ŁĄCZENIA W PRAWO, ŁĄCZENIA ZEWNĘTRZNEGO. Istnieją jednak dwa rodzaje UNII, UNII i UNII WSZYSTKO.
- W JOIN wynikowa krotka ma większy rozmiar, ponieważ zawiera atrybuty z obu relacji. Z drugiej strony w UNION liczba krotek jest zwiększona, w związku z czym krotka pochodzi z obu relacji obecnych w zapytaniu.
Wniosek:
Oba są operacjami łączenia danych i są wykorzystywane w różnych sytuacjach. ŁĄCZENIE jest używane, gdy chcemy połączyć atrybuty dwóch relacji mających co najmniej jeden wspólny atrybut. UNION jest używany, gdy chcemy połączyć krotki dwóch relacji obecnych w zapytaniu.