logo

Algebră relațională

Algebra relațională este un limbaj procedural de interogare. Oferă un proces pas cu pas pentru a obține rezultatul interogării. Utilizează operatori pentru a efectua interogări.

Tipuri de operații relaționale


Algebră relațională DBMS

1. Selectați Operație:

  • Operația select selectează tupluri care satisfac un anumit predicat.
  • Este notat cu sigma (σ).
 Notation: σ p(r) 

Unde:

p este folosit pentru predicția de selecție
r este folosit pentru relație
p este folosit ca o formulă logică propozițională care poate folosi conectori precum: AND OR și NOT. Acești relaționali pot folosi ca operatori relaționali precum =, ≠, ≧, , ≦.

De exemplu: Relația de împrumut

BRANCH_NAME LOAN_NR CANTITATE
Centrul orasului L-17 1000
Lemn rosu L-23 2000
Perryride L-15 1500
Centrul orasului L-14 1500
Mianus L-13 500
Roundhill L-11 900
Perryride L-16 1300

Intrare:

 σ BRANCH_NAME='perryride' (LOAN) 

Ieșire:

plutește la sfoară
BRANCH_NAME LOAN_NR CANTITATE
Perryride L-15 1500
Perryride L-16 1300

2. Funcționarea proiectului:

  • Această operație arată lista acelor atribute pe care dorim să apară în rezultat. Restul atributelor sunt eliminate din tabel.
  • Se notează cu ∏.
 Notation: ∏ A1, A2, An (r) 

Unde

A1 , A2 , A3 este folosit ca nume de atribut al relației r .

Exemplu: RELAȚIA CU CLIENȚII

NUME STRADĂ ORAȘ
Jones Principal Harrison
Smith Nord secară
Hays Principal Harrison
Curry Nord secară
Johnson Suflet Brooklyn
Brooks Senator Brooklyn

Intrare:

 ∏ NAME, CITY (CUSTOMER) 

Ieșire:

NUME ORAȘ
Jones Harrison
Smith secară
Hays Harrison
Curry secară
Johnson Brooklyn
Brooks Brooklyn

3. Operațiunea Uniunii:

  • Să presupunem că există două tupluri R și S. Operația de unire conține toate tuplurile care sunt fie în R sau S sau ambele în R & S.
  • Elimină tuplurile duplicate. Se notează cu ∪.
 Notation: R ∪ S 

O operațiune sindicală trebuie să îndeplinească următoarea condiție:

  • R și S trebuie să aibă atributul aceluiași număr.
  • Tuplurile duplicate sunt eliminate automat.

Exemplu:

RELAȚIA DEPOZITORULUI

java sort arraylist
NUMELE CLIENTULUI CONT_NU
Johnson A-101
Smith A-121
Mayes A-321
Strungar A-176
Johnson A-273
Jones A-472
Lindsay A-284

RELAȚIA DE ÎMPRUMUT

NUMELE CLIENTULUI LOAN_NR
Jones L-17
Smith L-23
Hayes L-15
Jackson L-14
Curry L-93
Smith L-11
Williams L-17

Intrare:

 ∏ CUSTOMER_NAME (BORROW) ∪ ∏ CUSTOMER_NAME (DEPOSITOR) 

Ieșire:

NUMELE CLIENTULUI
Johnson
Smith
Hayes
Strungar
Jones
Lindsay
Jackson
Curry
Williams
Mayes

4. Setați intersecția:

  • Să presupunem că există două tupluri R și S. Operația de intersecție a seturilor conține toate tuplurile care sunt în ambele R și S.
  • Se notează prin intersecția ∩.
 Notation: R ∩ S 

Exemplu: Folosind tabelul DEPOZITOR de mai sus și tabelul de împrumut

Intrare:

 ∏ CUSTOMER_NAME (BORROW) ∩ ∏ CUSTOMER_NAME (DEPOSITOR) 

Ieșire:

NUMELE CLIENTULUI
Smith
Jones

5. Setați diferența:

  • Să presupunem că există două tupluri R și S. Operația de intersecție a seturilor conține toate tuplurile care sunt în R, dar nu în S.
  • Se notează prin intersecție minus (-).
 Notation: R - S 

Exemplu: Folosind tabelul DEPOZITOR de mai sus și tabelul de împrumut

numerele alfabetului

Intrare:

 ∏ CUSTOMER_NAME (BORROW) - ∏ CUSTOMER_NAME (DEPOSITOR) 

Ieșire:

NUMELE CLIENTULUI
Jackson
Hayes
Williams
Curry

6. Produsul cartezian

  • Produsul cartezian este utilizat pentru a combina fiecare rând dintr-un tabel cu fiecare rând din celălalt tabel. Este cunoscut și ca produs încrucișat.
  • Este notat cu X.
 Notation: E X D 

Exemplu:

ANGAJAT

EMP_ID EMP_NAME EMP_DEPT
1 Smith A
2 Harry C
3 Ioan B

DEPARTAMENT

DEPT_NR DEPT_NAME
A Marketing
B Vânzări
C Legal

Intrare:

 EMPLOYEE X DEPARTMENT 

Ieșire:

coada java
EMP_ID EMP_NAME EMP_DEPT DEPT_NR DEPT_NAME
1 Smith A A Marketing
1 Smith A B Vânzări
1 Smith A C Legal
2 Harry C A Marketing
2 Harry C B Vânzări
2 Harry C C Legal
3 Ioan B A Marketing
3 Ioan B B Vânzări
3 Ioan B C Legal

7. Redenumiți operația:

Operația de redenumire este utilizată pentru a redenumi relația de ieșire. Este notat cu rho (p).

Exemplu: Putem folosi operatorul de redenumire pentru a redenumi relația STUDENT cu STUDENT1.

 ρ(STUDENT1, STUDENT) 

Notă: În afară de aceste operații obișnuite, algebra relațională poate fi utilizată în operațiile de îmbinare.