





































Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Algebra relacional - slides INtrodução a Banco de Dados
Tipologia: Slides
1 / 45
Esta página não é visível na pré-visualização
Não perca as partes importantes!






































[email protected] http://lattes.cnpq.br/ versão dos slides: nov/
Conteúdo Introdução Operações Básicas Operações de Conjunto Operações Adicionais
Operações Básicas: Seleção e Projeção
Seleção A operação de Seleção é usada para selecionar um subconjunto de tuplas de uma relação Notação:
R é uma expressão da álgebra relacional
Seleção - Exemplo Selecione os funcionários que pertencem ao departamento de número 2
(Funcionario) Resultado: Funcionario idFunc nomeFunc sexo salario idDepto 1111 João M 9.000 1 2222 Maria F 8.200 1 3333 Ana F 1.500 2 4444 Pedro M 1.200 3 5555 Rafael M 4.000 2 6666 Marina F 9.900 3 idFunc nomeFunc sexo salario idDepto 3333 Ana F 1.500 2 5555 Rafael M 4.000 2
Seleção - Exemplo Selecione os funcionários do sexo feminino que recebem salário superior a 8.000,
(Funcionario) Resultado: Funcionario idFunc nomeFunc sexo salario idDepto 1111 João M 9.000 1 2222 Maria F 8.200 1 3333 Ana F 1.500 2 4444 Pedro M 1.200 3 5555 Rafael M 4.000 2 6666 Marina F 9.900 3 idFunc nomeFunc sexo salario idDepto 2222 Maria F 8.200 1 6666 Marina F 9.900 3
Projeção A operação de Projeção é usada para selecionar um subconjunto dos atributos de uma relação Notação: <lista-de-atributos>(R) <lista-de-atributos> lista de atributos a ser recuperada R é uma expressão da álgebra relacional
Projeção - Exemplo Selecione o nome e o salário dos funcionários
(Funcionario) Resultado: Funcionario idFunc nomeFunc sexo salario idDepto 1111 João M 9.000 1 2222 Maria F 8.200 1 3333 Ana F 1.500 2 4444 Pedro M 1.200 3 5555 Rafael M 4.000 2 6666 Marina F 9.900 3 nomeFunc salario João 9. Maria 8. Ana 1. Pedro 1. Rafael 4. Marina 9.
Sequência de Operações Sequência escrita em uma única expressão Selecione o nome e o salário dos funcionários que pertencem ao departamento número 2
(
(Funcionario)) Resultado: Funcionario idFunc nomeFunc sexo salario idDepto 1111 João M 9.000 1 2222 Maria F 8.200 1 3333 Ana F 1.500 2 4444 Pedro M 1.200 3 5555 Rafael M 4.000 2 6666 Marina F 9.900 3 nomeFunc salario Ana 1. Rafael 4.
Sequência de Operações Sequência escrita com resultados intermediários Selecione o nome e o salário dos funcionários que pertencem ao departamento número 2 Temp ← idDepto = 2 (Funcionario) Resultado ← nomeFunc, salario (Temp) Resultado: Funcionario idFunc nomeFunc sexo salario idDepto 1111 João M 9.000 1 2222 Maria F 8.200 1 3333 Ana F 1.500 2 4444 Pedro M 1.200 3 5555 Rafael M 4.000 2 6666 Marina F 9.900 3 Resultado nomeFunc salario Ana 1. Rafael 4. Temp idFunc nomeFunc sexo salario idDepto 3333 Ana F 1.500 2 5555 Rafael M 4.000 2
Operação Renomear Também existe a operação renomear formal, usando o símbolo ρ ( rho ) Notação (3 formas): r S(B1, B2, …, Bn) (R) renomeia a relação e seus atributos r S (R) renomeia a relação r (B1, B2, …, Bn) (R) renomeia os atributos Exemplo: r
(
(Funcionario)) Resultado: Func id nome depto 1111 João 1 2222 Maria 1 ... ... ...
Operações de Conjuntos
União - Exemplo Selecione a identificação dos funcionários que pertencem ao departamento de número 2 ou que supervisionam diretamente algum funcionário do departamento número 2 t1 ←
(
(Funcionario) t2 ←
(
(Funcionario) result (idFunc) ← t1 U t Funcionario idFunc nomeFunc sexo salario idSuperv idDepto 1111 João M 9.000 null 1 2222 Maria F 8.200 1111 1 3333 Ana F 1.500 5555 2 4444 Pedro M 1.200 6666 3 5555 Rafael M 4.000 1111 2 6666 Marina F 9.900 1111 3 t idFunc 3333 5555 t idSuperv 5555 1111 result idFunc 1111 3333 5555
Interseção - Exemplo Selecione a identificação dos funcionários que pertencem ao departamento de número 2 e que supervisionam diretamente algum funcionário do departamento número 2 t1 ← idFunc ( idDepto = 2 (Funcionario) t2 ← idSuperv ( idDepto = 2 (Funcionario) result (idFunc) ← t1 t Funcionario idFunc nomeFunc sexo salario idSuperv idDepto 1111 João M 9.000 null 1 2222 Maria F 8.200 1111 1 3333 Ana F 1.500 5555 2 4444 Pedro M 1.200 6666 3 5555 Rafael M 4.000 1111 2 6666 Marina F 9.900 1111 3 t idFunc 3333 5555 t idSuperv 5555 1111 result idFunc 5555