DBMS-Joins: Inner, THETA, Outer, Equi-Typen von Join-Operationen

Was ist Join in DBMS?

Treten Sie DBMS bei ist eine binäre Operation, die es Ihnen ermöglicht, Join-Produkt und Auswahl in einer einzigen Anweisung zu kombinieren. Der Zweck der Erstellung einer Join-Bedingung besteht darin, dass sie Ihnen dabei hilft, die Daten aus zwei oder mehr DBMS-Tabellen zu kombinieren. Die Tabellen im DBMS werden mithilfe des Primärschlüssels und der Fremdschlüssel verknüpft.

Arten von Joins

Im DBMS gibt es hauptsächlich zwei Arten von Verknüpfungen:

  1. Innere Verbindungen: Theta, Natural, EQUI
  2. Äußere Verbindung: Links, rechts, vollständig

Schauen wir sie uns im Detail an:

Innerer Beitritt

Innerer Beitritt wird verwendet, um Zeilen aus beiden Tabellen zurückzugeben, die die angegebene Bedingung erfüllen. Es ist die am weitesten verbreitete Join-Operation und kann als Standard-Join-Typ betrachtet werden

Ein Inner Join oder Equijoin ist ein komparatorbasierter Join, der Gleichheitsvergleiche im Join-Prädikat verwendet. Wenn Sie jedoch andere Vergleichsoperatoren wie „>“ verwenden, kann es nicht als Equijoin bezeichnet werden.

Inner Join ist weiter in drei Untertypen unterteilt:

  • Theta macht mit
  • Natürliche Verbindung
  • EQUI beitreten

Theta Join

Theta Join ermöglicht es Ihnen, zwei Tabellen basierend auf der durch Theta dargestellten Bedingung zusammenzuführen. Theta verbindet die Arbeit für alle Vergleichsoperatoren. Es ist mit einem Symbol gekennzeichnet θ. Der allgemeine Fall einer JOIN-Operation wird als Theta-Join bezeichnet.

Syntax:

A ⋈θ B

Der Theta-Join kann beliebige Bedingungen in den Auswahlkriterien verwenden.

Betrachten Sie Folgendeswing Tabellen.

Tabelle A Tabelle B
Spalte 1 Spalte 2 Spalte 1 Spalte 2
1 1 1 1
1 2 1 3

Beispielsweise:

A ⋈ A.column 2 >  B.column 2 (B)
A ⋈ A.Spalte 2 > B.Spalte 2 (B)
Spalte 1 Spalte 2
1 2

EQUI beitreten

EQUI beitreten wird durchgeführt, wenn ein Theta-Join nur die Äquivalenzbedingung verwendet. Der EQUI-Join ist der am schwierigsten effizient zu implementierende Vorgang in einem RDBMSund ein Grund, warum RDBMS erhebliche Leistungsprobleme haben.

Beispielsweise:

A ⋈ A.column 2 =  B.column 2 (B)
A ⋈ A.Spalte 2 = B.Spalte 2 (B)
Spalte 1 Spalte 2
1 1

Natürliche Verbindung (⋈)

Natürliche Verbindung verwendet keinen der Vergleichsoperatoren. Bei diesem Join-Typ sollten die Attribute denselben Namen und dieselbe Domäne haben. Beim Natural Join sollte es mindestens ein gemeinsames Attribut zwischen zwei Beziehungen geben.

Es führt eine Selektion zur Gleichstellung der Attribute durch, die in beiden Beziehungen vorkommen, und eliminiert die doppelten Attribute.

Beispiel:

Betrachten Sie Folgendeswing zwei Tische

C
Num Quadratische Form
2 4
3 9
D
Num Würfel
2 8
3 18
C ⋈ D
C ⋈ D
Num Quadratische Form Würfel
2 4 8
3 9 18

Äußere Verbindung

An Äußere Verbindung erfordert nicht, dass jeder Datensatz in den beiden Join-Tabellen über einen übereinstimmenden Datensatz verfügt. Bei diesem Join-Typ behält die Tabelle jeden Datensatz bei, auch wenn kein anderer übereinstimmender Datensatz vorhanden ist.

Drei Arten von Outer Joins sind:

  • Linke äußere Verbindung
  • Rechte äußere Verknüpfung
  • Vollständige äußere Verbindung

Linker äußerer Join (A ⟕ B)

Linke äußere Verbindung Gibt alle Zeilen der Tabelle links zurück, auch wenn in der Tabelle rechts keine passenden Zeilen gefunden wurden. Wenn in der Tabelle rechts kein passender Datensatz gefunden wird, wird NULL zurückgegeben.

Linke äußere Verbindung

Betrachten Sie Folgendeswing 2-Tabellen

A
Num Quadratische Form
2 4
3 9
4 16
B
Num Würfel
2 8
3 18
5 75
A Left Outer Join B
A ⋈ B
Num Quadratische Form Würfel
2 4 8
3 9 18
4 16 -

Rechter äußerer Join (A ⟖ B)

Rechte äußere Verknüpfung Gibt alle Spalten der rechten Tabelle zurück, auch wenn in der linken Tabelle keine passenden Zeilen gefunden wurden. Wenn in der Tabelle links keine Übereinstimmungen gefunden wurden, wird NULL zurückgegeben. RIGHT äußere JOIN ist das Gegenteil von LEFT JOIN

Nehmen wir in unserem Beispiel an, dass Sie die Namen der Mitglieder und der von ihnen ausgeliehenen Filme benötigen. Jetzt haben wir ein neues Mitglied, das noch keinen Film ausgeliehen hat.

Rechte äußere Verknüpfung

A Right Outer Join B
A ⋈ B
Num Würfel Quadratische Form
2 8 4
3 18 9
5 75 -

Vollständiger äußerer Join (A ⟗ B)

In einer Vollständige äußere Verbindung werden alle Tupel aus beiden Relationen in das Ergebnis einbezogen, unabhängig von der Übereinstimmungsbedingung.

Beispiel:

A Full B
A ⋈ B
Num Quadratische Form Würfel
2 4 8
3 9 18
4 16 -
5 - 75

Zusammenfassung

  • Es gibt hauptsächlich zwei Arten von Joins DBMS 1) Innerer Join 2) Äußerer Join
  • Ein Inner Join ist die weit verbreitete Join-Operation und kann als Standard-Join-Typ betrachtet werden.
  • Inner Join ist weiter in drei Untertypen unterteilt: 1) Theta-Join, 2) Natural-Join und 3) EQUI-Join
  • Mit Theta Join können Sie zwei Tabellen basierend auf der durch Theta dargestellten Bedingung zusammenführen
  • Wenn ein Theta-Join nur die Äquivalenzbedingung verwendet, wird er zu einem Equi-Join.
  • Natural Join verwendet keinen der Vergleichsoperatoren.
  • Bei einem Outer-Join muss nicht jeder Datensatz in den beiden Join-Tabellen über einen übereinstimmenden Datensatz verfügen.
  • Der Outer Join ist weiter in drei Untertypen unterteilt: 1) Left Outer Join, 2) Right Outer Join, 3) Full Outer Join
  • Der LEFT Outer Join gibt alle Zeilen der Tabelle links zurück, auch wenn in der Tabelle rechts keine passenden Zeilen gefunden wurden.
  • Der RIGHT Outer Join gibt alle Spalten der rechten Tabelle zurück, auch wenn in der linken Tabelle keine passenden Zeilen gefunden wurden.
  • Bei einem vollständigen Outer-Join werden unabhängig von der Übereinstimmungsbedingung alle Tupel aus beiden Beziehungen in das Ergebnis einbezogen.