A álgebra relacional é uma linguagem de consulta processual. Ele fornece um processo passo a passo para obter o resultado da consulta. Ele usa operadores para realizar consultas.
Tipos de operação relacional
1. Selecione Operação:
- A operação select seleciona tuplas que satisfazem um determinado predicado.
- É denotado por sigma (σ).
Notation: σ p(r)
Onde:
p é usado para previsão de seleção
R é usado para relação
p é usado como uma fórmula lógica proposicional que pode usar conectores como: AND OR e NOT. Esses relacionais podem ser usados como operadores relacionais como =, ≠, ≧, , ≦.
Por exemplo: Relação EMPRÉSTIMO
FILIAL_NAME | LOAN_NO | QUANTIA |
---|---|---|
Centro da cidade | L-17 | 1000 |
sequoia | L-23 | 2000 |
Perryride | L-15 | 1500 |
Centro da cidade | L-14 | 1500 |
Miano | L-13 | 500 |
Colina redonda | L-11 | 900 |
Perryride | L-16 | 1300 |
Entrada:
σ BRANCH_NAME='perryride' (LOAN)
Saída:
quantos filmes de missão impossível existem
FILIAL_NAME | LOAN_NO | QUANTIA |
---|---|---|
Perryride | L-15 | 1500 |
Perryride | L-16 | 1300 |
2. Operação do Projeto:
- Esta operação mostra a lista dos atributos que desejamos que apareçam no resultado. O resto dos atributos são eliminados da tabela.
- É denotado por ∏.
Notation: ∏ A1, A2, An (r)
Onde
A1 , A2 , A3 é usado como um nome de atributo da relação R .
Exemplo: RELACIONAMENTO COM O CLIENTE
NOME | RUA | CIDADE |
---|---|---|
Jones | Principal | Harrison |
Smith | Norte | Centeio |
Fenos | Principal | Harrison |
Curry | Norte | Centeio |
Johnson | Alma | Brooklyn |
Brooks | Senador | Brooklyn |
Entrada:
∏ NAME, CITY (CUSTOMER)
Saída:
NOME | CIDADE |
---|---|
Jones | Harrison |
Smith | Centeio |
Fenos | Harrison |
Curry | Centeio |
Johnson | Brooklyn |
Brooks | Brooklyn |
3. Operação Sindical:
- Suponha que haja duas tuplas R e S. A operação de união contém todas as tuplas que estão em R ou S ou ambas em R e S.
- Elimina as tuplas duplicadas. É denotado por ∪.
Notation: R ∪ S
Uma operação sindical deve conter a seguinte condição:
fazer loop while java
- R e S devem ter o atributo do mesmo número.
- Tuplas duplicadas são eliminadas automaticamente.
Exemplo:
RELAÇÃO DEPOSITADOR
NOME DO CLIENTE | CONTA_NO |
---|---|
Johnson | A-101 |
Smith | A-121 |
Mayes | A-321 |
torneiro | A-176 |
Johnson | A-273 |
Jones | A-472 |
Lindsay | A-284 |
RELAÇÃO DE EMPRÉSTIMO
NOME DO CLIENTE | LOAN_NO |
---|---|
Jones | L-17 |
Smith | L-23 |
Hayes | L-15 |
Jackson | L-14 |
Curry | L-93 |
Smith | L-11 |
Willians | L-17 |
Entrada:
∏ CUSTOMER_NAME (BORROW) ∪ ∏ CUSTOMER_NAME (DEPOSITOR)
Saída:
NOME DO CLIENTE |
---|
Johnson |
Smith |
Hayes |
torneiro |
Jones |
Lindsay |
Jackson |
Curry |
Willians |
Mayes |
4. Definir intersecção:
- Suponha que haja duas tuplas R e S. A operação de interseção de conjunto contém todas as tuplas que estão em R e S.
- É denotado por interseção ∩.
Notation: R ∩ S
Exemplo: Usando a tabela DEPOSITOR e a tabela BORROW acima
Entrada:
coleções em java
∏ CUSTOMER_NAME (BORROW) ∩ ∏ CUSTOMER_NAME (DEPOSITOR)
Saída:
NOME DO CLIENTE |
---|
Smith |
Jones |
5. Definir diferença:
- Suponha que existam duas tuplas R e S. A operação de interseção de conjuntos contém todas as tuplas que estão em R, mas não em S.
- É denotado por interseção menos (-).
Notation: R - S
Exemplo: Usando a tabela DEPOSITOR e a tabela BORROW acima
Entrada:
∏ CUSTOMER_NAME (BORROW) - ∏ CUSTOMER_NAME (DEPOSITOR)
Saída:
NOME DO CLIENTE |
---|
Jackson |
Hayes |
Willians |
Curry |
6. Produto cartesiano
- O produto cartesiano é usado para combinar cada linha de uma tabela com cada linha da outra tabela. Também é conhecido como produto vetorial.
- É denotado por X.
Notation: E X D
Exemplo:
FUNCIONÁRIO
EMP_ID | EMP_NAME | EMP_DEPT |
---|---|---|
1 | Smith | A |
2 | atormentar | C |
3 | John | B |
DEPARTAMENTO
DEPT_NO | DEPT_NAME |
---|---|
A | Marketing |
B | Vendas |
C | Jurídico |
Entrada:
apenas apelido
EMPLOYEE X DEPARTMENT
Saída:
EMP_ID | EMP_NAME | EMP_DEPT | DEPT_NO | DEPT_NAME |
---|---|---|---|---|
1 | Smith | A | A | Marketing |
1 | Smith | A | B | Vendas |
1 | Smith | A | C | Jurídico |
2 | atormentar | C | A | Marketing |
2 | atormentar | C | B | Vendas |
2 | atormentar | C | C | Jurídico |
3 | John | B | A | Marketing |
3 | John | B | B | Vendas |
3 | John | B | C | Jurídico |
7. Renomear operação:
A operação renomear é usada para renomear a relação de saída. É denotado por ró (P).
Exemplo: Podemos usar o operador rename para renomear a relação ALUNO para ALUNO1.
ρ(STUDENT1, STUDENT)