Relációs algebra
A RELATIONAL ALGEBRA egy széles körben használt eljárási lekérdező nyelv. Összegyűjti a reláció példányait bemenetként, és a relációk előfordulásait kimenetként adja meg. Különböző műveleteket használ a művelet végrehajtására. Az SQL Relational algebra lekérdezési műveleteket egy reláción rekurzív módon hajtják végre. Ezeknek a műveleteknek a kimenete egy új reláció, amely egy vagy több bemeneti relációból alakulhat ki.
Ebben az oktatóanyagban megtudhatja:
- Relációs algebra
- SELECT (σ)
- Vetítés (π)
- Átnevezés (ρ)
- Uniós művelet (υ)
- A különbség beállítása (-)
- Útkereszteződés
- Derékszögű termék (X)
- Csatlakozás műveletekhez
- Belső összekapcsolás:
- Theta Csatlakozás:
- EQUI csatlakozás:
- TERMÉSZETES CSATLAKOZÁS (⋈)
- KÜLSŐ CSATLAKOZÁS
- Bal külső csatlakozás (A B)
- Jobb külső csatlakozás: (A B)
- Teljes külső csatlakozás: (A B)
Alapvető SQL relációs algebrai műveletek
A Relációs Algebra különféle csoportokban oszlott meg
Unary relációs műveletek
- SELECT (szimbólum: σ)
- PROJEKT (szimbólum: π)
- RENAME (szimbólum: ρ)
Relációs algebrai műveletek halmazelméletből
- UNIÓ (υ)
- ÚTKERESZTEZŐDÉS ( ),
- KÜLÖNBSÉG (-)
- KARTÉZI TERMÉK (x)
Bináris relációs műveletek
- CSATLAKOZIK
- OSZTÁLY
Tanulmányozzuk őket részletesen megoldásokkal:
SELECT (σ)
A SELECT művelet a tömbök egy részének kiválasztására szolgál egy adott kiválasztási feltétel szerint. Szigma (σ) szimbólum jelöli. Kifejezésként használják a kiválasztási feltételnek megfelelő sorrendek kiválasztására. A Select operátor kiválasztja azokat a sorokat, amelyek kielégítik az adott predikátumot.
σp(r)
σ
a predikátum r
relációt jelent, amely a tábla p
neve elöljárói logika
1. példa
σ topic = "Database" (Tutorials)
Kimenet - Kiválogatja azokat az oktatóanyagokat, ahol topic = 'Adatbázis'.
2. példa
σ topic = "Database" and author = "guru99"( Tutorials)
Kimenet - Kiválogatja azokat az oktatóanyagokat, ahol a téma 'Adatbázis', a 'szerző' pedig guru99.
3. példa
σ sales > 50000 (Customers)
Kimenet - Kiválasztja azokat az ügyfeleket, ahol az értékesítés meghaladja az 50000-at
Vetítés (π)
A vetítés kiküszöböli a bemeneti reláció összes attribútumát, kivéve azokat, amelyek szerepelnek a vetítési listában. A vetítési módszer egy relációt határoz meg, amely a Reláció függőleges részhalmazát tartalmazza.
Ez segít a megadott attribútumok értékeinek kibontásában, hogy kiküszöbölje az ismétlődő értékeket. (pi) szimbólumot használunk az attribútumok kiválasztásához egy relációból. Ez az operátor segít megtartani egy adott oszlopot egy relációból, és elveti a többi oszlopot.
Példa a vetítésre:
Vegye figyelembe a következő táblázatot
Ügyfél-azonosító | Ügyfél neve | Állapot |
---|---|---|
1 | Aktív | |
2 | amazon | Aktív |
3 | alma | Inaktív |
4 | Alibaba | Aktív |
Itt megadja a CustomerName és a status vetülete
Π CustomerName, Status (Customers)
Ügyfél neve | Állapot |
---|---|
Aktív | |
amazon | Aktív |
alma | Inaktív |
Alibaba | Aktív |
Átnevezés (ρ)
Az Átnevezés egy unari művelet, amelyet egy reláció attribútumainak átnevezésére használnak.
ρ (a / b) R átnevezi a reláció „b” attribútumát „a” -val.
Uniós művelet (υ)
Az UNION-t a ∪ szimbólum jelképezi. Ez magában foglalja az A vagy a B táblázatban szereplő összes sorrendet. Megszünteti az ismétlődő sorrendeket is. Tehát, az A csoport az UNION B halmazát a következőképpen fejezzük ki:
Az eredmény <- A ∪ B
A szakszervezeti működés érvényességéhez a következő feltételeknek kell teljesülniük:
- R és S azonos számú attribútumnak kell lennie.
- Az attribútum domaineknek kompatibiliseknek kell lenniük.
- Az ismétlődő sorrendeket automatikusan el kell távolítani.
Példa
Vegye figyelembe a következő táblázatokat.
A. táblázat | B. táblázat | |||
1. oszlop | 2. oszlop | 1. oszlop | 2. oszlop | |
---|---|---|---|---|
1 | 1 | 1 | 1 | |
1 | 2 | 1 | 3 |
A ∪ B ad
A ∪ B táblázat | |
1. oszlop | 2. oszlop |
---|---|
1 | 1 |
1 | 2 |
1 | 3 |
A különbség beállítása (-)
- A szimbólum jelöli. Az A - B eredménye egy olyan reláció, amely magában foglalja az összes sorszámot, amely A-ban található, de B-ben nincs.
- Az A attribútumnévnek meg kell egyeznie a B-ben szereplő attribútumnévvel.
- Az A és B kétoperandus kapcsolatoknak kompatibiliseknek vagy uniós kompatibiliseknek kell lenniük.
- Meg kell határozni azt a relációt, amely az A kapcsolatban van, de a B-ben nem.
Példa
A-B
A - B táblázat | |
1. oszlop | 2. oszlop |
---|---|
1 | 2 |
Útkereszteződés
A kereszteződést a the szimbólum határozza meg
A ∩ B
Meghatározza a relációt, amely az összes A és B csoportban lévő összes sorból áll. Azonban A-nak és B-nek unió-kompatibilisnek kell lennie.
Példa:
A ∩ B
A ∩ B táblázat | |
1. oszlop | 2. oszlop |
---|---|
1 | 1 |
Derékszögű termék (X) a DBMS-ben
A DBMS derékszögű termék egy olyan művelet, amelyet két reláció oszlopainak egyesítésére használnak. Általában a derékszögű termék soha nem jelent értelmes műveletet, ha egyedül végzi. Értelmessé válik azonban, ha más műveletek követik. Keresztterméknek vagy keresztcsatlakozásnak is hívják.
Példa - derékszögű termék
σ 2. oszlop = '1' (AXB)
Kimenet - A fenti példa az A és B reláció összes sorát mutatja, amelyek 2. oszlopának értéke 1
σ 2. oszlop = '1' (AXB) | |
1. oszlop | 2. oszlop |
---|---|
1 | 1 |
1 | 1 |
Csatlakozás műveletekhez
A csatlakozási művelet lényegében egy derékszögű termék, amelyet egy kiválasztási kritérium követ.
Csatlakozási művelet, amelyet ⋈ jelöl.
A JOIN művelet lehetővé teszi a különböző kapcsolatokból származó, különféle összefüggések egymáshoz kapcsolását is.
A JOIN típusai:
A csatlakozási műveletek különféle formái:
Belső csatlakozások:
- Theta csatlakozzon
- Az EQUI csatlakozik
- Természetes csatlakozás
Külső csatlakozás:
- Bal külső csatlakozás
- Jobb külső csatlakozás
- Teljes külső csatlakozás
Belső összekapcsolás:
Belső összekapcsoláskor csak azok a sorok kerülnek be, amelyek megfelelnek a megfelelő kritériumoknak, míg a többiek ki vannak zárva. Tanulmányozzuk a Belső csatlakozások különféle típusait:
Theta Csatlakozás:
A JOIN működés általános esetét Theta csatlakozásnak nevezzük. Θ szimbólummal jelöljük
Példa
A ⋈θ B
A Theta csatlakozás bármilyen feltételt felhasználhat a kiválasztási feltételekben.
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:
Amikor egy theta-csatlakozás csak ekvivalenciafeltételt használ, ekvivalens csatlakozás lesz.
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 |
Az EQUI csatlakozás a legnehezebben megvalósítható műveletek hatékony használata az SQL segítségével az RDBMS rendszerben, és az egyik oka annak, hogy az RDBMS-nek alapvető teljesítményproblémái vannak.
TERMÉSZETES CSATLAKOZÁS (⋈)
A természetes összekapcsolás csak akkor hajtható végre, ha a relációk között van egy közös attribútum (oszlop). Az attribútum nevének és típusának meg kell egyeznie.
Példa
Tekintsük a következő két táblázatot
C | |
Szám | Négyzet |
---|---|
2 | 4 |
3 | 9. |
D | |
Szám | Kocka |
---|---|
2 | 8. |
3 | 27. |
C ⋈ D
C ⋈ D | ||
Szám | Négyzet | Kocka |
---|---|---|
2 | 4 | 4 |
3 | 9. | 27. |
KÜLSŐ CSATLAKOZÁS
Egy külső csatlakozásban az egyező kritériumoknak megfelelő sorrendekkel együtt néhány vagy az összes olyan tételt is belefoglaljuk, amelyek nem felelnek meg a kritériumoknak.
Bal külső csatlakozás (A B)
A bal külső illesztésnél a művelet lehetővé teszi, hogy az összes duplát a bal relációban tartsuk. Ha azonban a megfelelő relációban nincs megfelelő párosítás, akkor a csatlakozás eredményében a jobb reláció attribútumai null értékekkel vannak feltöltve.
Vegye figyelembe a következő 2 táblázatot
A | |
Szám | Négyzet |
---|---|
2 | 4 |
3 | 9. |
4 | 16. |
B | |
Szám | Kocka |
---|---|
2 | 8. |
3 | 18. |
5. | 75 |
A B
A ⋈ B | ||
Szám | Négyzet | Kocka |
---|---|---|
2 | 4 | 4 |
3 | 9. | 9. |
4 | 16. | - |
Jobb külső csatlakozás: (A B)
A jobb külső illesztésnél a működés lehetővé teszi, hogy az összes duplát a megfelelő viszonyban tartsuk. Ha azonban nincs megfelelő páros a bal relációban, akkor a csatlakozás eredményében a bal reláció attribútumai null értékekkel vannak kitöltve.
A B
A ⋈ B | ||
Szám | Kocka | Négyzet |
---|---|---|
2 | 8. | 4 |
3 | 18. | 9. |
5. | 75 | - |
Teljes külső csatlakozás: (A B)
Teljes külső összekapcsoláskor mindkét reláció összes sora beleszámít az eredménybe, függetlenül az illesztési feltételtől.
A B
A ⋈ B | ||
Szám | Kocka | Négyzet |
---|---|---|
2 | 4 | 8. |
3 | 9. | 18. |
4 | 16. | - |
5. | - | 75 |
Összegzés
Működés (szimbólumok) |
Célja |
---|---|
Válassza ki (σ) |
A SELECT művelet a sorrendek egy részhalmazának kiválasztására szolgál egy adott kiválasztási feltétel szerint |
Vetítés (π) |
A vetítés kiküszöböli a bemeneti reláció összes attribútumát, kivéve azokat, amelyek szerepelnek a vetítési listában. |
Uniós művelet (∪) |
UNION szimbólum szimbolizálja. Ez magában foglalja az A vagy a B táblázatban szereplő összes sorrendet. |
A különbség beállítása (-) |
- A szimbólum jelöli. Az A - B eredménye egy olyan reláció, amely magában foglalja az összes sorszámot, amely A-ban található, de B-ben nincs. |
Metszéspont (∩) |
A metszéspont egy olyan relációt definiál, amely az A és a B-ben lévő összes duplából áll. |
Derékszögű termék (X) |
A derékszögű művelet segít két oszlop oszlopainak egyesítésében. |
Belső összekapcsolás |
A belső csatlakozás csak azokat a sorokat tartalmazza, amelyek megfelelnek az egyezési feltételeknek. |
Theta Csatlakozás (θ) |
A JOIN működés általános esetét Theta csatlakozásnak nevezzük. Θ szimbólummal jelöljük. |
EQUI Csatlakozzon |
Amikor egy theta-csatlakozás csak ekvivalenciafeltételt használ, ekvivalens csatlakozás lesz. |
Természetes csatlakozás (⋈) |
A természetes összekapcsolás csak akkor hajtható végre, ha a relációk között van egy közös attribútum (oszlop). |
Külső csatlakozás |
Külső csatlakozásban, a megfelelő kritériumoknak megfelelő tömbökkel együtt. |
Bal külső csatlakozás ( ) |
A bal külső illesztésnél a művelet lehetővé teszi, hogy az összes duplát a bal relációban tartsuk. |
Jobb külső csatlakozás ( ) |
A jobb külső illesztésnél a működés lehetővé teszi, hogy az összes duplát a megfelelő viszonyban tartsuk. |
Teljes külső csatlakozás ( ) |
Teljes külső összekapcsoláskor mindkét kapcsolat összes sorrendje beletartozik az eredménybe, függetlenül az egyeztetési feltételtől. |