DBMS-verbindingen: binnen-, THETA-, buiten-, Equi-typen verbindingen Operaties

Wat is meedoen aan DBMS?

Doe mee met DBMS is een binaire bewerking waarmee u join-product en selectie in รฉรฉn enkele instructie kunt combineren. Het doel van het maken van een join-voorwaarde is dat het u helpt de gegevens uit twee of meer DBMS-tabellen te combineren. De tabellen in DBMS worden gekoppeld met behulp van de primaire sleutel en externe sleutels.

Soorten deelname

Er zijn hoofdzakelijk twee soorten joins in DBMS:

  1. Binnenverbindingen: Theta, Natural, EQUI
  2. Buitenste verbinding: links, rechts, volledig

Laten we ze in detail bekijken:

Innerlijke verbinding

Innerlijke verbinding wordt gebruikt om rijen uit beide tabellen te retourneren die voldoen aan de gegeven voorwaarde. Het is de meest gebruikte join-bewerking en kan worden beschouwd als een standaard join-type

Een Inner join of equijoin is een comparator-based join die gelijkheidsvergelijkingen gebruikt in het join-predicaat. Als u echter andere vergelijkingsoperatoren gebruikt zoals โ€œ>โ€ kan het geen equijoin worden genoemd.

Inner Join verder onderverdeeld in drie subtypen:

  • Theta sluit zich aan
  • Natuurlijk meedoen
  • EQUI sluit zich aan

Theta Doe mee

Theta Doe mee kunt u twee tabellen samenvoegen op basis van de voorwaarde die wordt weergegeven door theta. Theta voegt werk samen voor alle vergelijkingsoperatoren. Het wordt aangegeven door het symbool ฮธHet algemene geval van een JOIN-bewerking wordt een Theta-join genoemd.

Syntax:

A โ‹ˆฮธ B

Theta join kan alle voorwaarden in de selectiecriteria gebruiken.

Bekijk de volgende tabellen.

Tabel A Tabel B
kolom 1 kolom 2 kolom 1 kolom 2
1 1 1 1
1 2 1 3

Bijvoorbeeld:

A โ‹ˆ A.column 2 >  B.column 2 (B)
A โ‹ˆ A.kolom 2 > B.kolom 2 (B)
kolom 1 kolom 2
1 2

EQUI Doe mee

EQUI Doe mee wordt gedaan wanneer een Theta-join alleen de equivalentievoorwaarde gebruikt. EQUI-join is de moeilijkste bewerking om efficiรซnt te implementeren in een RDBMS, en een reden waarom RDBMS essentiรซle prestatieproblemen hebben.

Bijvoorbeeld:

A โ‹ˆ A.column 2 =  B.column 2 (B)
A โ‹ˆ A.kolom 2 = B.kolom 2 (B)
kolom 1 kolom 2
1 1

Natuurlijke verbinding (โ‹ˆ)

Natuurlijk toetreden maakt geen gebruik van een van de vergelijkingsoperatoren. In dit type join moeten de attributen dezelfde naam en hetzelfde domein hebben. In Natural Join moet er ten minste รฉรฉn gemeenschappelijk attribuut zijn tussen twee relaties.

Het voert een selectie uit die gelijkheid vormt op de attributen die in beide relaties voorkomen en elimineert de dubbele attributen.

Voorbeeld:

Beschouw de volgende twee tabellen

C
In Carrรฉ
2 4
3 9
D
In Kubus
2 8
3 18
C โ‹ˆ D
C โ‹ˆ D
In Carrรฉ Kubus
2 4 8
3 9 18

buitenste join

An buitenste join vereist niet dat elke record in de twee samenvoegtabellen een overeenkomende record heeft. Bij dit type join behoudt de tabel elke record, zelfs als er geen andere overeenkomende record bestaat.

Er zijn drie soorten Outer Joins:

  • Linker Outer Join
  • Rechts buitenste verbinding
  • Volledige Outer Join

Linker buitenverbinding (A โŸ• B)

Linker Outer Join retourneert alle rijen uit de tabel aan de linkerkant, zelfs als er geen overeenkomende rijen zijn gevonden in de tabel aan de rechterkant. Als er geen overeenkomend record wordt gevonden in de tabel aan de rechterkant, wordt NULL geretourneerd.

Linker Outer Join

Beschouw de volgende 2 tabellen

A
In Carrรฉ
2 4
3 9
4 16
B
In Kubus
2 8
3 18
5 75
A Left Outer Join B
EEN โ‹ˆ B
In Carrรฉ Kubus
2 4 8
3 9 18
4 16 -

Rechter buitenverbinding ( A โŸ– B )

Rechts buitenste verbinding retourneert alle kolommen uit de tabel aan de rechterkant, zelfs als er geen overeenkomende rijen zijn gevonden in de tabel aan de linkerkant. Als er geen overeenkomsten zijn gevonden in de tabel aan de linkerkant, wordt NULL geretourneerd. RIGHT outside JOIN is het tegenovergestelde van LEFT JOIN

Laten we in ons voorbeeld aannemen dat u de namen van leden en door hen gehuurde films nodig heeft. Nu hebben we een nieuw lid dat nog geen film heeft gehuurd.

Rechts buitenste verbinding

A Right Outer Join B
EEN โ‹ˆ B
In Kubus Carrรฉ
2 8 4
3 18 9
5 75 -

Volledige buitenverbinding (A โŸ— B)

In een Volledige Outer Join , worden alle tupels uit beide relaties in het resultaat opgenomen, ongeacht de matchingvoorwaarde.

Voorbeeld:

A Full B
EEN โ‹ˆ B
In Carrรฉ Kubus
2 4 8
3 9 18
4 16 -
5 - 75

Samenvatting

  • Er zijn grofweg twee soorten joins dbms 1) Binnenverbinding 2) Buitenverbinding
  • Een inner join is de meest gebruikte join-bewerking en kan worden beschouwd als een standaard join-type.
  • Inner Join is verder onderverdeeld in drie subtypen: 1) Theta-join 2) Natuurlijke join 3) EQUI-join
  • Met Theta Join kunt u twee tabellen samenvoegen op basis van de voorwaarde die wordt weergegeven door theta
  • Wanneer een theta-join alleen een equivalentievoorwaarde gebruikt, wordt het een equi-join.
  • Bij een natuurlijke join worden geen vergelijkingsoperatoren gebruikt.
  • Voor een outside join hoeft niet elke record in de twee join-tabellen een overeenkomende record te hebben.
  • Outer Join is verder onderverdeeld in drie subtypen: 1) Left Outer Join 2) Right Outer Join 3) Volledige Outer Join
  • De LEFT Outer Join retourneert alle rijen uit de tabel aan de linkerkant, zelfs als er geen overeenkomende rijen zijn gevonden in de tabel aan de rechterkant.
  • De RIGHT Outer Join retourneert alle kolommen uit de tabel aan de rechterkant, zelfs als er geen overeenkomende rijen zijn gevonden in de tabel aan de linkerkant.
  • Bij een volledige outside join worden alle tupels uit beide relaties in het resultaat opgenomen, ongeacht de matchingvoorwaarde.

Vat dit bericht samen met: