logo

Algebra relazionale

L'algebra relazionale è un linguaggio di query procedurale. Fornisce un processo passo passo per ottenere il risultato della query. Utilizza gli operatori per eseguire query.

Tipi di operazione relazionale


Algebra relazionale dei DBMS

1. Selezionare Operazione:

  • L'operazione di selezione seleziona le tuple che soddisfano un dato predicato.
  • È indicato con sigma (σ).
 Notation: σ p(r) 

Dove:

P viene utilizzato per la previsione della selezione
R è usato per la relazione
P è usato come una formula logica proposizionale che può utilizzare connettori come: AND OR e NOT. Questi relazionali possono utilizzare come operatori relazionali come =, ≠, ≧, , ≦.

Ad esempio: Relazione PRESTITO

FILIALE_NOME PRESTITO_NO QUANTITÀ
Centro L-17 1000
Sequoia L-23 2000
Perryride L-15 1500
Centro L-14 1500
Mianus L-13 500
Roundhill L-11 900
Perryride L-16 1300

Ingresso:

 σ BRANCH_NAME='perryride' (LOAN) 

Produzione:

convertire la stringa in oggetto json
FILIALE_NOME PRESTITO_NO QUANTITÀ
Perryride L-15 1500
Perryride L-16 1300

2. Operazione del progetto:

  • Questa operazione mostra l'elenco degli attributi che desideriamo appaiano nel risultato. Il resto degli attributi vengono eliminati dalla tabella.
  • È indicato con ∏.
 Notation: ∏ A1, A2, An (r) 

Dove

A1 , A2 , A3 viene utilizzato come nome di attributo della relazione R .

Esempio: RELAZIONE CON IL CLIENTE

NOME STRADA CITTÀ
Jones Principale Harrison
fabbro Nord Segale
Hays Principale Harrison
Curry Nord Segale
Johnson Anima Brooklyn
Brooks Senatore Brooklyn

Ingresso:

 ∏ NAME, CITY (CUSTOMER) 

Produzione:

NOME CITTÀ
Jones Harrison
fabbro Segale
Hays Harrison
Curry Segale
Johnson Brooklyn
Brooks Brooklyn

3. Operazione sindacale:

  • Supponiamo che ci siano due tuple R e S. L'operazione di unione contiene tutte le tuple che sono in R o S o entrambe in R e S.
  • Elimina le tuple duplicate. È indicato con ∪.
 Notation: R ∪ S 

Un’operazione sindacale deve soddisfare la seguente condizione:

  • R e S devono avere l'attributo dello stesso numero.
  • Le tuple duplicate vengono eliminate automaticamente.

Esempio:

RAPPORTO DEPOSITANTE

NOME DEL CLIENTE CONTO_NO
Johnson A-101
fabbro A-121
Mayes A-321
Turner A-176
Johnson A-273
Jones A-472
Lindsay A-284

RAPPORTO DI PRESTITO

tostring java
NOME DEL CLIENTE PRESTITO_NO
Jones L-17
fabbro L-23
Hayes L-15
Jackson L-14
Curry L-93
fabbro L-11
Williams L-17

Ingresso:

converte la stringa in intero
 ∏ CUSTOMER_NAME (BORROW) ∪ ∏ CUSTOMER_NAME (DEPOSITOR) 

Produzione:

NOME DEL CLIENTE
Johnson
fabbro
Hayes
Turner
Jones
Lindsay
Jackson
Curry
Williams
Mayes

4. Imposta l'intersezione:

  • Supponiamo che ci siano due tuple R e S. L'operazione di intersezione degli insiemi contiene tutte le tuple che si trovano sia in R che in S.
  • È indicato dall'intersezione ∩.
 Notation: R ∩ S 

Esempio: Utilizzando la tabella DEPOSITOR e la tabella BORROW sopra

Ingresso:

 ∏ CUSTOMER_NAME (BORROW) ∩ ∏ CUSTOMER_NAME (DEPOSITOR) 

Produzione:

NOME DEL CLIENTE
fabbro
Jones

5. Imposta la differenza:

  • Supponiamo che ci siano due tuple R e S. L'operazione di intersezione degli insiemi contiene tutte le tuple che sono in R ma non in S.
  • È indicato dall'intersezione meno (-).
 Notation: R - S 

Esempio: Utilizzando la tabella DEPOSITOR e la tabella BORROW sopra

Ingresso:

 ∏ CUSTOMER_NAME (BORROW) - ∏ CUSTOMER_NAME (DEPOSITOR) 

Produzione:

NOME DEL CLIENTE
Jackson
Hayes
Williams
Curry

6. Prodotto cartesiano

  • Il prodotto cartesiano viene utilizzato per combinare ciascuna riga di una tabella con ciascuna riga dell'altra tabella. È noto anche come prodotto incrociato.
  • È indicato con X.
 Notation: E X D 

Esempio:

DIPENDENTE

EMP_ID EMP_NAME EMP_DEPT
1 fabbro UN
2 Harry C
3 John B

DIPARTIMENTO

UFF_NO DEPT_NAME
UN Marketing
B Saldi
C Legale

Ingresso:

 EMPLOYEE X DEPARTMENT 

Produzione:

EMP_ID EMP_NAME EMP_DEPT UFF_NO DEPT_NAME
1 fabbro UN UN Marketing
1 fabbro UN B Saldi
1 fabbro UN C Legale
2 Harry C UN Marketing
2 Harry C B Saldi
2 Harry C C Legale
3 John B UN Marketing
3 John B B Saldi
3 John B C Legale

7. Operazione di ridenominazione:

L'operazione di ridenominazione viene utilizzata per rinominare la relazione di output. È indicato con Rho (P).

coda di Giava

Esempio: Possiamo usare l'operatore rename per rinominare la relazione STUDENT in STUDENT1.

 ρ(STUDENT1, STUDENT) 

Nota: oltre a queste operazioni comuni, l'algebra relazionale può essere utilizzata nelle operazioni di unione.