banco de dados
BD-I - Prof. Guilherme Tavares de Assis
Exercício – Álgebra Relacional
Exercício – Álgebra Relacional
• Esquema relacional "Empresa":
Empregado (PrimeiroNome, InicialMeio, UltimoNome, NumEmpregado,
DataNascimento, Endereco, Sexo, Salario, NumSupervisor, NumDepto)
Departamento (NomeDepto, NumDepto, NumGerente, DataInicioGerencia)
Localizacao_Depto (NumDepart, Localizacao)
Projeto (NomeProj, NumProj, Localizacao, NumDepto)
Trabalha_em (NumEmpregado, NumProj, Horas)
Dependente (NumEmpregado, NomeDependente, Sexo, DataAniversario, Parentesco)
Empregado [NumSupervisor] {n} Empregado [NumEmpregado]
Empregado [NumDepto] {b} Departamento [NumDepto]
Departamento [NumGerente] {b} Empregado [NumEmpregado]
Localizacao_Depto [NumDepart] {p} Departamento [NumDepto]
Projeto [NumDepto] {b} Departamento [NumDepto]
Trabalha_em [NumEmpregado] {p} Empregado [NumEmpregado]
Trabalha_em [NumProj] {p} Projeto [NumProj]
Dependente [NumEmpregado] {p} Empregado [NumEmpregado]
1. Recuperar o nome (primeiro e último nome) e o endereço dos empregados que trabalham para o departamento de número 5.
R ← π PrimeiroNome,UltimoNome,Endereco (σ NumDepto=5 (Empregado))
30
BD-I - Prof. Guilherme Tavares de Assis
31
BD-I - Prof. Guilherme Tavares de Assis
Exercício – Álgebra Relacional
Exercício – Álgebra Relacional
2. Recuperar o nome (primeiro e último nome) e o endereço dos empregados que trabalham para o departamento 'Pesquisa'.
DepPesq ← σ NomeDepto = 'Pesquisa' (Departamento)
R ← π PrimeiroNome,UltimoNome,Endereco (DepPesq ∗ Empregado)
3. Para cada projeto localizado no 'Centro', recuperar o número do projeto, o número do departamento controlador e o nome
(primeiro e último nome), o endereço e a data de nascimento do gerente do departamento.
ProjsCentro ← σ Localizacao = 'Centro' (Projeto)
DepsProjs ← ProjsCentro ∗ Departamento
GersDeps ← Empregado
NumEmpregado=NumGerente DepsProjs
R ← π