L'àlgebra relacional és un llenguatge de consulta procedimental. Proporciona un procés pas a pas per obtenir el resultat de la consulta. Utilitza operadors per realitzar consultes.
Tipus d'operació relacional
1. Seleccioneu Operació:
- L'operació de selecció selecciona tuples que satisfan un determinat predicat.
- Es denota amb sigma (σ).
Notation: σ p(r)
On:
pàg s'utilitza per a la predicció de selecció
r s'utilitza per a la relació
pàg s'utilitza com una fórmula lògica proposicional que pot utilitzar connectors com: AND OR i NOT. Aquests relacionals es poden utilitzar com a operadors relacionals com =, ≠, ≧, , ≦.
Per exemple: Relació LOAN
BRANCH_NAME | LOAN_NO | IMPORT |
---|---|---|
Centre de la ciutat | L-17 | 1000 |
Sequoia | L-23 | 2000 |
Perryride | L-15 | 1500 |
Centre de la ciutat | L-14 | 1500 |
Mianus | L-13 | 500 |
Rodona | L-11 | 900 |
Perryride | L-16 | 1300 |
Entrada:
σ BRANCH_NAME='perryride' (LOAN)
Sortida:
fmoviez
BRANCH_NAME | LOAN_NO | IMPORT |
---|---|---|
Perryride | L-15 | 1500 |
Perryride | L-16 | 1300 |
2. Funcionament del projecte:
- Aquesta operació mostra la llista d'aquells atributs que volem que apareguin al resultat. La resta d'atributs s'eliminen de la taula.
- Es denota amb ∏.
Notation: ∏ A1, A2, An (r)
On
A1 , A2 , A3 s'utilitza com a nom d'atribut de la relació r .
Exemple: RELACIÓ CLIENT
NOM | CARRER | CIUTAT |
---|---|---|
Jones | Principal | Harrison |
Smith | nord | Sègol |
Hays | Principal | Harrison |
Curry | nord | Sègol |
Johnson | Ànima | Brooklyn |
Brooks | Senador | Brooklyn |
Entrada:
∏ NAME, CITY (CUSTOMER)
Sortida:
NOM | CIUTAT |
---|---|
Jones | Harrison |
Smith | Sègol |
Hays | Harrison |
Curry | Sègol |
Johnson | Brooklyn |
Brooks | Brooklyn |
3. Funcionament sindical:
- Suposem que hi ha dues tuples R i S. L'operació d'unió conté totes les tuples que estan en R o S o ambdues en R i S.
- Elimina les tuples duplicades. Es denota amb ∪.
Notation: R ∪ S
Una operació sindical ha de complir la condició següent:
- R i S han de tenir l'atribut del mateix nombre.
- Les tuples duplicades s'eliminen automàticament.
Exemple:
RELACIÓ DEPOSITANT
NOM DEL CLIENT | NÚM DE COMPTE |
---|---|
Johnson | A-101 |
Smith | A-121 |
Mayes | A-321 |
Turner | A-176 |
Johnson | A-273 |
Jones | A-472 |
Lindsay | A-284 |
RELACIÓ DE PRESTATS
tutorial de java
NOM DEL CLIENT | LOAN_NO |
---|---|
Jones | L-17 |
Smith | L-23 |
Hayes | L-15 |
Jackson | L-14 |
Curry | L-93 |
Smith | L-11 |
Williams | L-17 |
Entrada:
comanda arp-a
∏ CUSTOMER_NAME (BORROW) ∪ ∏ CUSTOMER_NAME (DEPOSITOR)
Sortida:
NOM DEL CLIENT |
---|
Johnson |
Smith |
Hayes |
Turner |
Jones |
Lindsay |
Jackson |
Curry |
Williams |
Mayes |
4. Establir intersecció:
- Suposem que hi ha dues tuples R i S. L'operació d'intersecció de conjunt conté totes les tuples que es troben a R i S.
- Es denota per intersecció ∩.
Notation: R ∩ S
Exemple: Utilitzant la taula DEPOSITOR i la taula PRÉSETA anteriors
Entrada:
∏ CUSTOMER_NAME (BORROW) ∩ ∏ CUSTOMER_NAME (DEPOSITOR)
Sortida:
NOM DEL CLIENT |
---|
Smith |
Jones |
5. Establiu la diferència:
- Suposem que hi ha dues tuples R i S. L'operació d'intersecció de conjunt conté totes les tuples que estan a R però no a S.
- Es denota per intersecció menys (-).
Notation: R - S
Exemple: Utilitzant la taula DEPOSITOR i la taula PRÉSETA anteriors
Entrada:
∏ CUSTOMER_NAME (BORROW) - ∏ CUSTOMER_NAME (DEPOSITOR)
Sortida:
NOM DEL CLIENT |
---|
Jackson |
Hayes |
Williams |
Curry |
6. Producte cartesià
- El producte cartesià s'utilitza per combinar cada fila d'una taula amb cada fila de l'altra taula. També es coneix com a producte creuat.
- Es denota amb X.
Notation: E X D
Exemple:
EMPLEAT
EMP_ID | EMP_NAME | EMP_DEPT |
---|---|---|
1 | Smith | A |
2 | Harry | C |
3 | Joan | B |
DEPARTAMENT
DEPT_NO | DEPT_NAME |
---|---|
A | Màrqueting |
B | Vendes |
C | Legal |
Entrada:
EMPLOYEE X DEPARTMENT
Sortida:
EMP_ID | EMP_NAME | EMP_DEPT | DEPT_NO | DEPT_NAME |
---|---|---|---|---|
1 | Smith | A | A | Màrqueting |
1 | Smith | A | B | Vendes |
1 | Smith | A | C | Legal |
2 | Harry | C | A | Màrqueting |
2 | Harry | C | B | Vendes |
2 | Harry | C | C | Legal |
3 | Joan | B | A | Màrqueting |
3 | Joan | B | B | Vendes |
3 | Joan | B | C | Legal |
7. Canvia el nom de l'operació:
L'operació de canvi de nom s'utilitza per canviar el nom de la relació de sortida. Es denota per rho (p).
inserció ordena java
Exemple: Podem utilitzar l'operador de renom per canviar el nom de la relació STUDENT a STUDENT1.
ρ(STUDENT1, STUDENT)