DBMS csatlakozások: Belső, THETA, Külső, Equi típusú csatlakozások OperaTIONS

Mi az a csatlakozás a DBMS-ben?

Csatlakozzon a DBMS-hez egy bináris művelet, amely lehetővé teszi a termék és a kijelölés összekapcsolását egyetlen utasításban. Az összekapcsolási feltétel létrehozásának célja, hogy segítsen kombinálni két vagy több DBMS-tábla adatait. A DBMS táblái az elsődleges kulcs és az idegen kulcsok használatával vannak társítva.

Csatlakozás típusai

A DBMS-ben alapvetően kétféle csatlakozás létezik:

  1. Belső csatlakozások: Theta, Natural, EQUI
  2. Külső csatlakozás: bal, jobb, teljes

Lássuk őket részletesen:

Belső összekapcsolás

Belső összekapcsolás arra szolgál, hogy mindkét táblából olyan sorokat adjon vissza, amelyek megfelelnek az adott feltételnek. Ez a legszélesebb körben használt összekapcsolási művelet, és alapértelmezett csatlakozási típusnak tekinthető

Az Inner join vagy equijoin egy összehasonlító alapú összekapcsolás, amely egyenlőség-összehasonlításokat használ az összekapcsolási predikátumban. Ha azonban más összehasonlító operátort használ, például a „>”, akkor nem nevezhető equijoinnak.

Az Inner Join további három altípusra oszlik:

  • Theta csatlakozzon
  • Természetes csatlakozás
  • EQUI csatlakozás

Theta Join

Theta Join lehetővé teszi két tábla egyesítését a théta által képviselt feltétel alapján. A théta minden összehasonlító operátor munkájához csatlakozik. Szimbólum jelöli θ. A JOIN művelet általános esetét Theta join-nak nevezik.

Syntax:

A ⋈θ B

A Theta Join bármilyen feltételt használhat a kiválasztási kritériumokban.

Vegye figyelembe a következő táblázatokat.

Táblázat B. táblázat
1. oszlop 2. oszlop 1. oszlop 2. oszlop
1 1 1 1
1 2 1 3

Például:

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

EQUI Csatlakozás

EQUI Csatlakozás akkor történik meg, ha egy Theta csatlakozás csak az ekvivalencia feltételt használja. Az EQUI join a legnehezebben hatékonyan megvalósítható művelet RDBMS, és az egyik oka annak, hogy az RDBMS-nek alapvető teljesítményproblémái vannak.

Például:

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

Természetes csatlakozás (⋈)

Természetes csatlakozás nem használja az összehasonlító operátorok egyikét sem. Az ilyen típusú összekapcsolásnál az attribútumoknak azonos névvel és domainnel kell rendelkezniük. A Natural Join-ben legalább egy közös attribútumnak kell lennie két reláció között.

Azon attribútumokon, amelyek mindkét relációban megjelennek, egyenlőséget képező szelekciót hajt végre, és kiküszöböli a duplikált attribútumokat.

Példa:

Tekintsük a következő két táblázatot

C
-Ban Négyzet
2 4
3 9
D
-Ban Kocka
2 8
3 18
C ⋈ D
C⋈D
-Ban Négyzet Kocka
2 4 8
3 9 18

Külső csatlakozás

An Külső csatlakozás nem követeli meg, hogy a két összekapcsoló tábla minden rekordjának legyen egyező rekordja. Az ilyen típusú összekapcsolásnál a tábla minden rekordot megőrz még akkor is, ha nincs másik megfelelő rekord.

A külső csatlakozások három típusa:

  • Bal külső csatlakozás
  • Jobb külső csatlakozás
  • Teljes külső csatlakozás

Bal külső csatlakozás (A–B)

Bal külső csatlakozás visszaadja a bal oldali táblázat összes sorát, még akkor is, ha a jobb oldali táblázatban nem található egyező sor. Ha nem található egyező rekord a jobb oldali táblázatban, akkor a NULL értéket adja vissza.

Bal külső csatlakozás

Tekintsük a következő 2 táblázatot

A
-Ban Négyzet
2 4
3 9
4 16
B
-Ban Kocka
2 8
3 18
5 75
A Left Outer Join B
A ⋈ B
-Ban Négyzet Kocka
2 4 8
3 9 18
4 16 -

Jobb külső csatlakozás (A ⟖ B)

Jobb külső csatlakozás visszaadja a jobb oldali táblázat összes oszlopát, még akkor is, ha a bal oldali táblázatban nem található egyező sor. Ahol nem található egyezés a bal oldali táblázatban, NULL-t ad vissza. A RIGHT külső JOIN a LEFT JOIN ellentéte

Példánkban tegyük fel, hogy meg kell szereznie az általuk kölcsönzött tagok és filmek nevét. Most van egy új tagunk, aki még nem kölcsönzött filmet.

Jobb külső csatlakozás

A Right Outer Join B
A ⋈ B
-Ban Kocka Négyzet
2 8 4
3 18 9
5 75 -

Teljes külső csatlakozás (A⟗B)

egy Teljes külső csatlakozás , mindkét reláció összes sora szerepel az eredményben, függetlenül az illesztési feltételtől.

Példa:

A Full B
A ⋈ B
-Ban Négyzet Kocka
2 4 8
3 9 18
4 16 -
5 - 75

Összegzésként

  • Főleg kétféle csatlakozás létezik DBMS 1) Belső csatlakozás 2) Külső csatlakozás
  • A belső összekapcsolás a széles körben használt összekapcsolási művelet, és alapértelmezett csatlakozási típusnak tekinthető.
  • Az Inner Join további három altípusra oszlik: 1) Theta join 2) Natural Join 3) EQUI csatlakozás
  • A Theta Join lehetővé teszi két tábla egyesítését a theta által képviselt feltétel alapján
  • Ha egy théta join csak ekvivalencia feltételt használ, akkor equi join lesz.
  • A természetes összekapcsolás nem használja az összehasonlító operátorok egyikét sem.
  • A külső összekapcsoláshoz nem szükséges, hogy a két összekapcsolási tábla minden rekordjának legyen egyező rekordja.
  • A külső csatlakozás további három altípusra oszlik: 1) Bal külső csatlakozás 2) Jobb külső csatlakozás 3) Teljes külső csatlakozás
  • A LEFT Outer Join a bal oldali táblázat összes sorát visszaadja, még akkor is, ha a jobb oldali táblázatban nem található egyező sor.
  • A RIGHT Outer Join a jobb oldali táblázat összes oszlopát visszaadja, még akkor is, ha a bal oldali táblázatban nem található egyező sor.
  • Teljes külső összekapcsolás esetén mindkét reláció összes sora szerepel az eredményben, függetlenül az illesztési feltételtől.