Hvad er Deltag i DBMS?
Deltagelse i DBMS er en binær operation, der giver dig mulighed for at kombinere sammenføjningsprodukt og valg i en enkelt erklæring. Målet med at oprette en tilslutningsbetingelse er, at det hjælper dig med at kombinere data fra to eller flere DBMS-tabeller. Tabellerne i DBMS er tilknyttet ved hjælp af primærnøgle og fremmednøgler.
I denne DBMS-tutorial lærer du:
- Typer af deltagelse
- Indvendig sammenføjning
- Theta Deltag
- EQUI deltager:
- Natural Join (⋈)
- Ydre tilslutning
- Venstre ydre samling (A
B)
- Højre ydre samling (A
B)
- Fuld ydre samling (A
B)
Typer af deltagelse
Der er hovedsagelig to typer sammenføjninger i DBMS:
- Indvendige sammenføjninger: Theta, Natural, EQUI
- Ydre samling: Venstre, højre, fuld
Lad os se dem i detaljer:
Indvendig sammenføjning
INNER JOIN bruges til at returnere rækker fra begge tabeller, der opfylder den givne betingelse. Det er den mest anvendte tilslutningsoperation og kan betragtes som en standard sammenføjningstype
En indre sammenføjning eller equijoin er en komparatorbaseret sammenføjning, der bruger ligestillingssammenligninger i sammenføjningspredikatet. Men hvis du bruger andre sammenligningsoperatører som ">", kan det ikke kaldes equijoin.
Inner Join yderligere opdelt i tre undertyper:
- Theta slutter sig
- Naturlig sammenføjning
- EQUI deltager
Theta Deltag
THETA JOIN giver dig mulighed for at flette to tabeller baseret på den tilstand, der er repræsenteret af theta. Theta slutter sig til arbejde for alle sammenligningsoperatører. Det er betegnet med symbolet θ . Det generelle tilfælde af JOIN-operation kaldes en Theta-join.
Syntaks:
A ⋈θ B
Theta-deltagelse kan bruge alle betingelser i udvælgelseskriterierne.
Overvej følgende tabeller.
Tabel A | Tabel B | |||
kolonne 1 | kolonne 2 | kolonne 1 | kolonne 2 | |
1 | 1 | 1 | 1 | |
1 | 2 | 1 | 3 |
For eksempel:
A ⋈ A.column 2 > B.column 2 (B)
A ⋈ A. kolonne 2> B. kolonne 2 (B) | |
kolonne 1 | kolonne 2 |
1 | 2 |
EQUI Deltag
EQUI JOIN udføres, når en Theta-join kun bruger ækvivalensbetingelsen. EQUI-tilslutning er den sværeste operation, der skal implementeres effektivt i en RDBMS, og en af grundene til, at RDBMS har væsentlige ydeevneproblemer.
For eksempel:
A ⋈ A.column 2 = B.column 2 (B)
A ⋈ A. kolonne 2 = B. kolonne 2 (B) | |
kolonne 1 | kolonne 2 |
1 | 1 |
Natural Join (⋈)
NATURAL JOIN bruger ikke nogen af sammenligningsoperatørerne. I denne type sammenføjning skal attributterne have samme navn og domæne. I Natural Join skal der være mindst en fælles attribut mellem to relationer.
Den udfører markering, der danner ligestilling på de attributter, der vises i begge relationer, og eliminerer de duplikerede attributter.
Eksempel:
Overvej følgende to tabeller
C | |
Num | Firkant |
2 | 4 |
3 | 9 |
D | |
Num | Terning |
2 | 8 |
3 | 18 |
C ⋈ D
C ⋈ D | ||
Num | Firkant | Terning |
2 | 4 | 8 |
3 | 9 | 18 |
Ydre tilslutning
En OUTER JOIN kræver ikke, at hver post i de to sammenføjningstabeller har en matchende post. I denne type sammenføjning bevarer tabellen hver post, selvom der ikke findes nogen anden matchende post.
Tre typer ydre samlinger er:
- Venstre ydre samling
- Højre ydre samling
- Fuld ydre tilslutning
Venstre ydre samling (A
B)
VENSTRE JOIN returnerer alle rækkerne fra tabellen til venstre, selvom der ikke er fundet nogen matchende rækker i tabellen til højre. Når der ikke findes nogen matchende post i tabellen til højre, returneres NULL.
Overvej følgende 2 tabeller
EN | |
Num | Firkant |
2 | 4 |
3 | 9 |
4 | 16 |
B | |
Num | Terning |
2 | 8 |
3 | 18 |
5 | 75 |
AB
A ⋈ B | ||
Num | Firkant | Terning |
2 | 4 | 8 |
3 | 9 | 18 |
4 | 16 | - |
Højre ydre samling (A
B)
RIGHT JOIN returnerer alle kolonnerne fra tabellen til højre, selvom der ikke er fundet nogen matchende rækker i tabellen til venstre. Hvor der ikke er fundet matches i tabellen til venstre, returneres NULL. HØJRE ydre JOIN er det modsatte af LEFT JOIN
Lad os i vores eksempel antage, at du har brug for at få navnene på medlemmer og film lejet af dem. Nu har vi et nyt medlem, der endnu ikke har lejet nogen film.
AB
A ⋈ B | ||
Num | Terning | Firkant |
2 | 8 | 4 |
3 | 18 | 9 |
5 | 75 | - |
Fuld ydre samling (A
B)
I en FULD OUTER JOIN er alle tupler fra begge relationer inkluderet i resultatet, uanset den matchende tilstand.
Eksempel:
AB
A ⋈ B | ||
Num | Firkant | Terning |
2 | 4 | 8 |
3 | 9 | 18 |
4 | 16 | - |
5 | - | 75 |
Resumé:
- Der er hovedsagelig to typer sammenføjninger i DBMS 1) Indvendig sammenføjning 2) Udvendig tilslutning
- En indre sammenføjning er den udbredte sammenføjningsoperation og kan betragtes som en standard sammenføjningstype.
- Indre sammenføjning er yderligere opdelt i tre undertyper: 1) Theta-sammenføjning 2) Naturlig sammenføjning 3) EQUI-sammenføjning
- Theta Join giver dig mulighed for at flette to tabeller baseret på den tilstand, der er repræsenteret af theta
- Når en theta-sammenføjning kun bruger ækvivalensbetingelse, bliver den en equi-sammenføjning.
- Natural join bruger ikke nogen af sammenligningsoperatørerne.
- En ydre sammenføjning kræver ikke, at hver post i de to sammenføjningstabeller har en matchende post.
- Ydre sammenføjning er yderligere opdelt i tre undertyper er: 1) Venstre ydre sammenføjning 2) Højre ydre sammenføjning 3) Fuld ydre sammenføjning
- VENSTRE ydre sammenføjning returnerer alle rækkerne fra tabellen til venstre, selvom der ikke er fundet nogen matchende rækker i tabellen til højre.
- RIGHT Outer Join returnerer alle kolonnerne fra tabellen til højre, selvom der ikke er fundet nogen matchende rækker i tabellen til venstre.
- I en fuld ydre sammenføjning er alle tupler fra begge relationer inkluderet i resultatet, uanset den matchende tilstand.