Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Conceitos Bsicos
A Operao Select
A Operao Project
Seqencialidade das Operaes
Operaes Matemticas
Produto Cartesiano
Operao Juno
Apndice: Exemplo de Banco de Dados
1. Conceitos Bsicos
lgebra Relacional uma coleo de operaes utilizadas para manipular as relaes.
Estas operaes so utilizadas para selecionar tuplas (linhas) de relaes individuais e
para combinar tuplas relacionadas de relaes diferentes para especificar uma consulta
em um determinado banco de dados.
O resultado de cada operao uma nova operao, a qual tambm pode ser
manipulada pela lgebra relacional. Todos os exemplos envolvendo lgebra relacional
implicam na utilizao de um banco de dados.
2. A Operao Select
A operao select utilizada para selecionar um subconjunto de tuplas de uma relao
(tabela), sendo que estas tuplas devem satisfazer uma condio de seleo.
A forma geral de uma operao select :
2. A Operao Select
Exemplos:
consulta1 =
(EMPREGADO)
salrio < 2.500,00
Tabela consulta1
Nome
RG
CIC
Depto.
RG
Salrio
Supervisor
10101010 2.300,00
20202020 1.300,00
(DEPENDENTES)
Tabela consulta2
RG
Nome
Dt.
Relao
Responsvel Dependente Nascimento
30303030
Adreia
01/05/90
Filho
Sexo
Feminino
2. A Operao Select
As operaes relacionais que podem ser aplicadas na operao select so:
, , , , =,
alm dos operadores booleanos:
and, or, not.
A operao select unria, ou seja, s pode ser aplicada a uma nica relao. No
possvel aplicar a operao sobre tuplas de relaes distintas.
3. A Operao Project
A operao project seleciona um conjunto determinado de colunas de uma relao. A forma
geral de uma operao project :
3. A Operao Project
Exemplos:
consulta3 = Nome,
(DEPENDENTES)
Dt. Nascimento
Tabela consulta3
Nome
Dt. Nascimento
Dependente
Jorge
27/12/86
Luiz
18/11/79
Fernanda
14/02/69
Angelo
10/02/95
Adreia
01/05/90
(EMPREGADO)
(EMPREGADO)
Tabela consulta5
Nome
RG
CIC
Ricardo
Renato
33333333
55555555
30303030
50505050
Depto
.
2
3
RG
Supervisor
10101010
20202020
(CONSULTA5)
Tabela consulta6
Nome
Depto.
Ricardo
2
Renato
3
Salrio
2.300,00
1.300,00
Salrio
2.300,00
1.300,00
5. Operaes Matemticas
Levando em considerao que as relaes podem ser tratadas como conjuntos, podemos
ento aplicar um conjunto de operaes matemticas sobre as mesmas. Estas operaes
so:
5. Operaes Matemticas
Leve em considerao a seguinte consulta:
Selecione todos os empregados que trabalham no departamento nmero 2 ou que
supervisionam empregados que trabalham no departamento nmero 2.
Vamos primeiro selecionar todos os funcionrios que trabalham no departamento
nmero 2.
consulta7 = depto = 2
(EMPREGADOS)
Tabela consulta7
Nome
RG
Fernando 20202020
Ricardo
30303030
Jorge
40404040
CIC
22222222
33333333
44444444
Depto.
2
2
2
RG Supervisor
10101010
10101010
20202020
Salrio
2.500,00
2.300,00
4.200,00
5. Operaes Matemticas
Vamos agora selecionar os supervisores dos empregados que trabalham no departamento
nmero 2.
consulta8 = rg_supervisor
(CONSULTA7)
Tabela consulta8
RG Supervisor
10101010
20202020
Vamos projetar apenas o rg dos empregados selecionados:
consulta9 = rg
(CONSULTA7)
Tabela consulta9
RG
20202020
30303030
40404040
5. Operaes Matemticas
E por fim, vamos unir as duas tabelas, obtendo o resultado final.
consulta10 = CONSULTA8 CONSULTA9
Tabela consulta10
RG
20202020
30303030
40404040
10101010
5. Operaes Matemticas
Leve em considerao a prxima consulta:
Selecione todos os empregados que desenvolvem algum projeto e que trabalham no
departamento nmero 2.
Vamos primeiro selecionar todos os empregados que trabalham em um projeto.
consulta11 = rg_empregado
(EMPREGADO/PROJETO)
Tabela consulta11
RG_Empregado
20202020
30303030
40404040
50505050
5. Operaes Matemticas
Vamos agora selecionar todos os empregados que trabalham no departamento 2.
consulta12 = rg (depto = 2
(EMPREGADOS)
Tabela consulta12
RG
20202020
30303030
40404040
Obtemos ento todos os empregados que trabalham no departamento 2 e que desenvolvem
algum projeto.
consulta13 = CONSULTA11
CONSULTA12
Tabela consulta13
RG
20202020
30303030
40404040
5. Operaes Matemticas
Leve em considerao a seguinte consulta:
Selecione todos os usurios que no desenvolvem projetos.
consulta14 = rg_empregado
(EMPREGADO/PROJETO)
Tabela consulta14
RG Empregado
20202020
30303030
40404040
50505050
consulta15 = rg
(EMPREGADOS)
Tabela consulta15
RG
10101010
20202020
30303030
40404040
50505050
5. Operaes Matemticas
consulta16 = CONSULTA15 CONSULTA14
Tabela consulta16
RG
10101010
6. Produto Cartesiano
O produto cartesiano uma operao binria que combina todas as tuplas de duas
tabelas.
Diferente da operao unio, o produto cartesiano no exige que as tuplas das tabelas
possuam exatamente o mesmo tipo.
O produto cartesiano permite ento a consulta entre tabelas relacionadas utilizando uma
condio de seleo apropriada. O resultado de um produto cartesiano uma nova tabela
formada pela combinao das tuplas das tabelas sobre as quais aplicou-se a operao.
O formato geral do produto cartesiano entre duas tabelas R e S :
RS
6. Produto Cartesiano
Leve em considerao a seguinte consulta:
Encontre todos os funcionrios que desenvolvem projetos em Campinas.
consulta16 = (EMPREGADO PROJETO)
RG Empregado
10101010
10101010
10101010
20202020
20202020
20202020
30303030
30303030
30303030
40404040
40404040
40404040
50505050
50505050
50505050
Empregado.* Nmero
Projeto
....
5
....
10
....
20
....
5
....
10
....
20
....
5
....
10
....
20
....
5
....
10
....
20
....
5
....
10
....
20
Nome
Localizao
Financeiro 1
Motor 3
Prdio Central
Financeiro 1
Motor 3
Prdio Central
Financeiro 1
Motor 3
Prdio Central
Financeiro 1
Motor 3
Prdio Central
Financeiro 1
Motor 3
Prdio Central
So Paulo
Rio Claro
Campinas
So Paulo
Rio Claro
Campinas
So Paulo
Rio Claro
Campinas
So Paulo
Rio Claro
Campinas
So Paulo
Rio Claro
Campinas
6. Produto Cartesiano
Vamos agora selecionar as tuplas cuja localizao seja Campinas.
consulta17 =
7. Operao Juno
A operao juno atua de forma similar operao produto cartesiano, porm, a tabela
resultante conter apenas as combinaes das tuplas que se relacionam de acordo com
uma determinada condio de juno.
A forma geral da operao juno entre duas tabelas R e S a seguinte:
<condio de juno>
7. Operao Juno
Leve em considerao a consulta a seguir:
Encontre todos os funcionrios que desenvolvem projetos em Campinas.
consulta18 = EMPREGADOS/PROJETOS
Tabela consulta18
RG
Nmero
Empregado Projeto
20202020
5
20202020
10
30303030
5
40404040
20
50505050
20
nmero_projeto = nmero
PROJETOS
Nome
Nmero
Localizao
Financeiro 1
Motor 3
Financeiro 1
Prdio Central
Prdio Central
5
10
5
20
20
So Paulo
Rio Claro
So Paulo
Campinas
Campinas
Localizao
Campinas
Campinas
Tabela EMPREGADO
Nome
RG
Joo Luiz
10101010
Fernando
20202020
Ricardo
30303030
Jorge
40404040
Renato
50505050
CIC
11111111
22222222
33333333
44444444
55555555
Tabela DEPARTAMENTO
Nome
Nmero
Contabilidade
Engenharia Civil
Engenharia Mecnica
1
2
3
Depto.
1
2
2
2
3
RG Supervisor
NULO
10101010
10101010
20202020
20202020
Salrio
3.000,00
2.500,00
2.300,00
4.200,00
1.300,00
RG Gerente
Tabela PROJETO
Nome
Nmero
Localizao
10101010
30303030
20202020
Financeiro 1
Motor 3
Prdio Central
5
10
20
So Paulo
Rio Claro
Campinas
Tabela DEPENDENTES
RG Responsvel
Nome Dependente
Dt. Nascimento
Relao
Sexo
10101010
Jorge
27/12/86
Filho
Masculino
10101010
Luiz
18/11/79
Filho
Masculino
20202020
Fernanda
14/02/69
Conjuge
Feminino
20202020
Angelo
10/02/95
Filho
Masculino
30303030
Adreia
01/05/90
Filho
Feminino
Tabela DEPARTAMENTO_PROJETO
Tabela EMPREGADO_PROJETO
Nmero Depto.
Nmero Projeto
RG Empregado
Nmero Projeto
Horas
20202020
10
10
20202020
10
25
20
30303030
35
40404040
20
50
50505050
20
35