Vous êtes sur la page 1sur 22

Tecnologias de bancos

de dados
CNTIA AVELAR

1 Sem./2017
lgebra e clculo relacional - Reviso
Operaes relacionais unrias: SELEO e PROJEO
Sequncias de operaes
Operaes de lgebra relacional com base na teoria dos conjuntos
A operao PRODUTO CARTESIANO ou PRODUTO CRUZADO
Operaes relacionais binrias: JUNO e DIVISO
Notao para rvores de consultas
Exemplos de consultas na lgebra relacional

TECNOLOGIAS DE BANCO DE DADOS 2


lgebra e clculo relacional
lgebra relacional
Conjunto bsico de operaes para o modelo relacional

Expresso da lgebra relacional


Sequncia de operaes da lgebra relacional

Clculo relacional
Linguagem declarativa de nvel mais alto para especificar consultas relacionais

TECNOLOGIAS DE BANCO DE DADOS 3


Operaes relacionais unrias: SELEO E
PROJEO
Operao de SELEO
Subconjunto das tuplas de uma relao que satisfaa uma condio de
seleo

Expresso booleana contm clusulas da forma <nome do atributo> <op


comparao> <valor constante>
ou
<nome do atributo> <op comparao> <nome do atributo>

TECNOLOGIAS DE BANCO DE DADOS 4


Operaes relacionais unrias: SELEO E
PROJEO
Exemplo:
(Dnr= 4 AND Salario>25.000) (FUNCIONARIO)
<condio seleo> aplicada independentemente para cada tupla
individual t em R
Se a condio for TRUE, tupla selecionada
Condies booleanas AND, OR e NOT

TECNOLOGIAS DE BANCO DE DADOS 5


Operaes relacionais unrias: SELEO E
PROJEO
Operao de PROJEO
Seleciona colunas da tabela e descarta as outras

Grau
Nmero de atributos em <lista de atributos>

Eliminao de duplicatas
Resultado da operao PROJEO como um conjunto de tuplas distintas

TECNOLOGIAS DE BANCO DE DADOS 6


Sequncias de operaes
Expresso em linha:
( (FUNCIONARIO))
Pnome,Unome,Salario (Dnr=5)

Sequncia de operaes:
FUNCS_DEPT5 (Dnr=5) (FUNCIONARIO)

RESULTADO Pnome,Unome,Salario (FUNCS_DEPT5)

TECNOLOGIAS DE BANCO DE DADOS 7


Operaes de lgebra relacional com base na
teoria dos conjuntos
UNIO, INTERSEO e SUBTRAO
Mesclar os elementos de dois conjuntos de diversas maneiras
Operaes binrias
Relaes devem ter o mesmo tipo de tupla

UNIO
R S
Inclui todas as tuplas que esto em R ou em S ou tanto em R
quanto em S
Tuplas duplicadas so eliminadas

TECNOLOGIAS DE BANCO DE DADOS 8


Operaes de lgebra relacional com base na
teoria dos conjuntos
INTERSEO
R S
Inclui todas as tuplas que esto tanto em R quanto em S

DIFERENA DE CONJUNTO (SUBTRAO)


R S
Inclui todas as tuplas que esto em R mas no esto em S

TECNOLOGIAS DE BANCO DE DADOS 9


A operao PRODUTO CARTESIANO ou
PRODUTO CRUZADO
PRODUTO CARTESIANO
Produto cartesiano ou Juno Cruzada
Indicada por
Combina operaes entre duas relaes
Relaes que no precisam ser compatveis na unio
til quando seguida por uma seleo que combina valores de
atributos

TECNOLOGIAS DE BANCO DE DADOS 10


Operaes relacionais binrias: JUNO
A operao JUNO
Indicada por
Combina tuplas relacionadas de duas relaes em uma nica tupla
maior
Condio de juno geral tem a forma <condio> AND <condio> AND
<condio> AND... AND <condio>
Exemplo:

TECNOLOGIAS DE BANCO DE DADOS 11


Variaes de JUNO: EQUIJUNO e
JUNO NATURAL
EQUIJUNO
nico operador de comparao usado: =
Sempre temos um ou mais pares de atributos que possuem
valores idnticos em cada tupla
JUNO NATURAL
Indicado por *
Elimina o segundo atributo (desnecessrio) na condio de
EQUIJUNO

TECNOLOGIAS DE BANCO DE DADOS 12


Um conjunto completo de operaes da
lgebra relacional

Conjunto de operaes da lgebra relacional {, , , , , }


um conjunto completo
Qualquer operao da lgebra relacional pode ser expressa como
uma sequncia de operaes desse conjunto

TECNOLOGIAS DE BANCO DE DADOS 13


TECNOLOGIAS DE BANCO DE DADOS 14
Notao para rvores de consulta
rvore de consulta
Representa as relaes de entrada da consulta como ns folha da
rvore
Representa as operaes da lgebra relacional como ns internos

TECNOLOGIAS DE BANCO DE DADOS 15


Notao para rvores de consulta
Considere a questo:
Recuperar o ltimo nome do empregado que trabalha no projeto Arquivo X

SELECT E.ltimo_nome
FROM empregado E, trabalha T, projeto P
WHERE P.nome_projeto = arquivo X
AND P.nro_projeto = T.nro_projeto
AND E.nro_empregado = T.nro_empregado

TECNOLOGIAS DE BANCO DE DADOS 16


Notao para rvores de consulta

TECNOLOGIAS DE BANCO DE DADOS 17


Exemplos de consultas na lgebra relacional

Consulta 1. Recuperar o nome e o endereo de todos os funcionrios que


trabalham para o departamento Pesquisa.

TECNOLOGIAS DE BANCO DE DADOS 18


Exemplos de consultas na lgebra relacional
Consulta 2. Para cada projeto localizado em Mau, liste o nmero do
projeto, o nmero do departamento que o controla e o ltimo nome,
endereo e data de nascimento do gerente do departamento.

TECNOLOGIAS DE BANCO DE DADOS 19


Exemplos de consultas na lgebra relacional

Consulta 3. Recuperar os nomes dos funcionrios que no possuem


dependentes. Este um exemplo do tipo de consulta que usa a operao
SUBTRAO

TECNOLOGIAS DE BANCO DE DADOS 20


Exemplos de consultas na lgebra relacional

Consulta 4. Listar os nomes dos gerentes que tem pelo menos um


dependente.

TECNOLOGIAS DE BANCO DE DADOS 21


Bibliografia
ELMASRI, Ramez; Navathe, Shamkant B., Sistema de Banco de Dados - 6 edio. Pearson 810
ISBN 9788579360855. Livro Eletrnico

SILBERSCHATZ, Abraham; KORTH, Henry F.; SUDARSHAN, S. Sistema de banco de dados. 6. ed.
Rio de Janeiro: Elsevier, Campus, c2012. 861 p. ISBN 9788535245356, N de Exemplares: 8. Consta
no acervo da PUC Minas

Witten, Ian H.; Moffat, Alistair; Bell, Timothy C. Managing Gigabytes: Compressing and Indexing
Documents and Images. 2. Morgan Kaufmann Publishers. 1999.

TECNOLOGIAS DE BANCO DE DADOS 22

Vous aimerez peut-être aussi