Buscar

IBD Aula 4

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 19 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 19 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 19 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Implementação de Banco de Dados Aula 4
Professor Daniel Silos - 3ª edição - 2015
dsilos@live.estacio.br
Objetivos da aula
• Identificar as operações básicas de álgebra 
relacional
• Construir expressões algébricas de seleção e 
projeção
Álgebra relacional
•É uma coleção de operações canônicas que são
utilizadas para manipular as relações.
•Estas operações servem para selecionar tuplas
de relações individuais e para combinar tuplas
relacionadas de relações diferentes para
especificar uma consulta em um determinado
banco de dados.
•O resultado de cada operação é uma nova
operação, a qual também pode ser manipulada
pela álgebra relacional.
• Operadores da álgebra relacional - dois
grupos:
– Operadores de Conjuntos: são operadores típicos
definidos pela álgebra para conjunto, tais como
união, interseção, diferença e produto cartesiano.
– Operadores de Tabelas: são operadores especiais
definidos especialmente para a manipulação de
tuplas, tais como, Select, Project e Join.
Algebra relacional
• Linguagem procedural
• Seis operadores básicos
– Seleção (ou restrição): 
– projeção: 
– união: 
– Diferença de conjuntos: –
– Produto cartesiano: x
– renomeação: 
• Os operadores utilizam uma ou duas relações e 
produzem uma nova relação como resultado. 
Operador de seleção - exemplo
 Relação r
A B C D








1
5
12
23
7
7
3
10
A=B ^ D > 5 (r)
A B C D




1
23
7
10
Operador de Seleção
• Notação:  p(r)
• p é chamado de predicado
• termos :  (e),  (ou),  (não)
Cada termo é um dos:
<atributo>op <atributo> ou <constante>
onde op é um dos: =, , >, . <. 
• Exemplo de seleção:
 CorDorso=“branco amarelado”(ESPECIE)
SELECT * FROM ESPECIE 
WHERE CorDorso= 'branco amarelado';
• As cláusulas podem ser utilizadas em conjunto com os 
operadores lógicos {AND, OR e/ou NOT}, seguindo a 
Lógica Booleana, para formar uma condição de seleção 
composta.
• Exemplo, suponha que se deseja selecionar as tuplas de 
todos os empregados que ou trabalham no 
departamento 4 e ganham mais de 2500 ou trabalham 
no departamento 5 e ganham mais que 3000.
• Neste caso, pode-se especificar a consulta da seguinte 
forma:
• (NDEP = 4 ^ SALÁRIO > 2500)  (NDEP = 5 ^ SALÁRIO > 3000) 
(EMPREGADO)
• O operador SELECT é comutativo; isto é:
•  <cond1> ( <cond2> (R))=  <cond2> ( <cond1> (R))
• Assim, uma sequência de SELECTs pode ser aplicado em 
qualquer ordem.
• Além disso, pode-se sempre trocar operadores SELECT
em cascata com a conjuntiva AND; isto é:
•  <cond1> ( <cond2> (...  <condn> (R) ...))= 
<cond1> ^ <cond2> ^ ... ^ <condn>(R)
Operador de projeção
A B C




10
20
30
40
1
1
1
2
A C




1
1
1
2
=
A C



1
1
2
 Relação r  A,C (r)
Operador de projeção
• Notação:
onde A1, A2 são nomes de atributos e r é o nome de uma relação.
• O resultado é definido como a relação de k colunas obtidas pela 
ocultação de colunas que não são listadas. 
• Linhas duplicadas são removidas do resultado, já que relações são 
conjuntos. 
• Exemplo: Para eliminar o atributo nome_agência de conta
 Nome_Cientifico (ESPECIE) 
SELECT Nome_Cientifico FROM ESPECIE;
)( 
,,, 21
r
kAAA 

• Exemplo: encontre o nome de todas as agências 
na relação empréstimo:
SELECT nome_agencia
FROM emprestimo
• Em álgebra relacional, a consulta seria: 
nome_agencia (emprestimo)
• Sequencia de Operações
• As operações PROJECTe SELECT podem ser
utilizadas de forma combinada, permitindo que
apenas determinadas colunas de determinadas
tuplas possam ser selecionadas.
• A forma geral de uma operação sequencial é:
Π <lista de atributos> ( <condição de seleção>
(<nome da relação>))
• Exemplo:
Π Nome_Cientifico, CorDorso, Denticao ( CorDorso = “branco
amarelado” (ESPECIE))
SELECT Nome_Cientifico, CorDorso, Denticao
FROM ESPECIE
WHERE CorDorso = 'branco amarelado';
Resumindo
• SQL é baseada em operações de conjuntos e operações relacionais 
com certas modificações e avanços
• Uma consulta SQL típica tem o formato: :
SELECTA1, A2, ..., An
FROM r1, r2, ..., rm
WHERE P
– Ai - atributo
– Ri - relação
– P - predicado.
• Esta consulta é equivalente a expressão algébrica relacional.
• O resultado de uma consulta SQL é uma relação; 
))((
21,,, 21 mPAAA
rrr
n
  
• Permite-nos nomear, e consequentemente referenciar, 
os resultados de expressões de álgebra relacional. 
• Permite-nos referenciar uma relação por mais de um 
nome.
• Exemplo:
 x (E)
retorna a expressão E sobre o nome X
• Se a expressão E tem aridade n, então
retorna o resultado de expressão E sobre o nome X, e 
com os atributos renomeados para A1 , A2 , …., An .
Operação de renomeação
A partir deste momento o aluno está apto 
a resolver os exercícios da Lista de 
exercícios 4.
Bibliografia
– SILBERSCHATZ, Abraham; KORTH, Henry F; 
SUDARSHAN, S. A. Sistema de banco de dados. 5ª 
ed. Rio de Janeiro: Campus, 2006

Outros materiais