Escolar Documentos
Profissional Documentos
Cultura Documentos
Álgebra Relacional
Álgebra Relacional
1. Seleção
2. Projeção
3. Produto cartesiano
4. União
5. Diferença entre conjuntos
6. Renomear
Alunos
sex
id nome o
Macoratt
123 M
i
234 Miriam F
456 Jefferson M
567 Janice F
sex
id nome o
Macoratt
123 M
i
sex
id nome o
234 Miriam F
Jefferso
456 M
n
nome (Alunos)
nome
Macoratt
i
Miriam
Jefferson
Janice
Neste caso será necessário combinar uma projeção com uma seleção.
id nome
Macoratt
123
i
456 Jefferson
Alunos
sex
id nome o
curso
Macoratt
123 M 100
i
234 Miriam F 110
456 Jefferson M 120
567 Janice F 100
Cursos
id nome
100 Quimica
110 Inglês
Matemátic
120
a
130 Física
Resultado:
sex
id nome o
nome
Macoratt
123 M Quimica
i
234 Miriam F Inglês
Matemátic
456 Jefferson M a
567 Janice F Quimica
sex
id nome o
curso id nome
Macoratt 10
123 M 100
0
Quimica
i
Macoratt 11
123 M 100
0
Inglês
i
Macoratt 12 Matematic
123 M 100
0 a
i
Macoratt 13
123 M 100
0
Fisica
i
10
234 Miriam F 110
0
Quimica
11
234 Miriam F 110
0
Inglês
12 Matematic
234 Miriam F 110
0 a
13
234 Miriam F 1100
0
Fisica
... ... ... ... ... ...
sex
id nome o
curso id nome
Macoratt 10
123 M 100
0
Quimica
i
11
123 Miriam F 110
0
Inglês
12 Matematic
123 Jefferson M 120 0 a
10
123 Janice F 100
0
Quimica
sex
nome o
nome
Macoratt
M Quimica
i
Miriam F Inglês
Matemátic
Jefferson M a
Janice F Quimica
Alunos Professores
Funcionarios
Domínio
:
idad
id nome curso
e
Macoratt Quimic
10 45
i a
20 Miriam 43 Artes
30 Bianca 21 Fisica
10 Quimic
Pedro 50
0 a
20 Maria 45 Fisica
0
30
Bianca 21 Artes
0
Domínio:
idad idad
id nome curso id nome setor
e e id = int
1 Macoratt Quimic 10 Quimic nome =
45 Pedro 50
0 i a 0 a varchar(30)
2 20 idade = int
Miriam 43 Artes Maria 45 Artes curso =
0 0
varchar(30)
3 30 Bianc
Bianca 21 Fisica 21 Fisica setor =
0 0 a varchar(30)
Ex1 : Apresente uma relação de todos os alunos que não são professores
idad
id nome curso
e
1 Macoratt Quimic
45
0 i a
2
Miriam 43 Artes
0
idad
id nome setor
e
10 Pedr Quimic
50
0 o a
20
Maria 45 Artes
0
Esta é uma operação adicional que produz como resultado uma tabela que
contém, sem repetições, todos os elementos que são comuns às duas tabelas
fornecidas como operandos. As tabelas devem ser união-compatíveis.
Alunos(R1) Professores(R2)
Domínio:
idad idad
id nome curso id nome setor
e e id = int
1 Macoratt Quimic 10 Quimic nome =
45 Pedro 50
0 i a 0 a varchar(30)
2 20 idade = int
Miriam 43 Artes Maria 45 Artes curso =
0 0
varchar(30)
3 30 Bianc
Bianca 21 Fisica 21 Fisica setor =
0 0 a varchar(30)
idad
id nome curso
e
3 Bianc Fisic
21
0 a a
É uma operação que produz uma combinação entre as linhas de uma relação
com as linhas correspondentes de outra relação, sendo em princípio
correspondente a uma seleção pelos atributos de relacionamento sobre um
produto cartesiano dessas relações:
Notação: R1 |x| R2
Empregados Setores
Empregados |x| Setores
gerent
id nome setor id nome setor
e
10 Macorat
Admin setor gerente 10 Macorat Paulin
0 ti Admin
Admin Paulino 0 ti o
20 Jefferso Conta
Conta 20 Jefferso Conta
0 n b Amelia Amelia
b 0 n b
30
Bianca Admin Francisc 30 Paulin
0 RH Bianca Admin
a 0 o
40 Conta
Janice 40 Conta
0 b Janice Amelia
0 b
Notação: R1 R2
Equipes Projetos
NomeProjet
id
o
10 NomeProjet
Projeto1 descricao
0 o
20 Projeto1 Suporte
Projeto2
0 Desenvolviment
Projeto2
30 o
Projeto3
0 Projeto3 Manutenção
40
Projeto4
0
Resultado:
A seguir temos uma tabela com um resumo das operações vistas neste
artigo:
Diferença entre SQL e PL / SQL SQL é uma linguagem orientada a
dados para selecionar e manipular dados, mas PL SQL é uma
linguagem procedural para criar aplicativos. O SQL executa uma
instrução por vez, enquanto no PL SQL o bloco de código pode ser
executado. SQL é declarativo enquanto PL SQL é procedural.
PL/SQL
Permite que a manipulação de dados seja incluída em unidades de
programas. Blocos de PL/SQL são passados e processados por uma
PL/SQL Engine que pode estar dentro de uma ferramenta Oracle ou do
Server.
É a linguagem básica para criar programas complexos e poderosos, não só
no banco de dados, mas também em diversas ferramentas Oracle.