Buscar

Aula_08

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

*
*
MATEMÁTICA DISCRETA – AULA 8
PROFESSORA HELGA BODSTEIN, D.Sc. 
Aula 8
Relações e Banco de Dados e Operações Relacionais Fundamentais
*
*
Conteúdo
Álgebra Relacional e seus conceitos básicos
Relação em um Banco de Dados 
Sintaxes das operações relacionais de seleção, projeção e junção natural
Aplicação das operações de seleção, projeção e junção natural em uma ou mais relações 
Pesquisas em um banco de dados relacionais utilizando expressões algébricas relacionais
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Introdução
Um modelo relacional representa o banco de dados como um conjunto de relações.
Uma relação pode ser pensada como uma tabela de valores.
Cada linha na tabela representa uma coleção de valores de dados relacionados.
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Introdução
A Álgebra Relacional é uma linguagem de consulta formal, porém procedimental, ou seja, o usuário dá as instruções ao sistema para que o mesmo realize uma sequência de operações na base de dados para calcular o resultado desejado.
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Introdução
A Álgebra Relacional define operadores para atuar nas tabelas (semelhante aos operadores +, -, etc. da álgebra que estamos acostumados) para chegar ao resultado desejado.
A forma de trabalho desta linguagem de consulta é a de pegar uma ou mais tabelas (conforme necessidade) como entrada de dados e produzir uma nova tabela como resultado das operações.
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Terminologia
Na terminologia formal de modelo relacional, temos:
 A tabela é chamada de relação
RELAÇÃO
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Terminologia
Uma linha é chamada de tupla
	 TUPLA →
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Terminologia
O cabeçalho da coluna é chamado de atributo 
	ATRIBUTO →
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Terminologia
O tipo de dados que descreve os tipos de valores que podem aparecer em cada coluna é chamado de domínio.
� 
O esquema de uma relação R é denotado por R(A1,A2,…,An), sendo Ai o nome de um atributo
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Exemplo:
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Funções da Álgebra Relacional
São definidas as seguintes operações para se trabalhar com álgebra relacional:
• União;
 Intersecção;
 Diferença;
Produto Cartesiano.
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Funções da Álgebra Relacional
Seleção;
Projeção;
Junção;
Divisão.
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Operação de Seleção
É utilizada para selecionar um subconjunto de tuplas numa relação que satisfaça uma condição de seleção predefinida. 
	Indicada por  (letra grega sigma) ou s
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Operação de Seleção
Sintaxe para a operação de Seleção:
Relação 2 ←  (critério da seleção) (Relação1)
ou
 (critério da seleção) (Relação1)
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Operação de Seleção
O critério de seleção deve ser uma expressão lógica que atenda a propriedade de seleção e deve ser através:
Exemplo de predicado:
((cor = ‘azul’)  (cidade = ‘Curitiba’))  ((nome=‘Parafuso’)
Operadores aritméticos: >, <, =, <>, >=, <=
Operadores lógicos:  (e),  (ou),  (not)
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Exemplo:
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Exemplo: Obter a relação de todas as peças de cor azul
cor = azul (Peca) 
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Tupla
cor = azul (Peca) 
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Exemplo: Obter a relação de todas as peças
(Peca) 
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Operação de Projeção
A operação de Projeção seleciona colunas específicas numa relação, isto é, efetua um corte vertical na relação.
Geralmente indicada por  (letra grega pi maiúsculo) ou p. 
Por operar sobre apenas um conjunto de entrada, a projeção é classificada como uma operação unária.
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Operação de Projeção
Sintaxe para a operação de Projeção:
Relação 2 ←  colunas desejadas(Relação 1)
Ou
 colunas desejadas(Relação 1)
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Operação de Projeção
Exemplo: Obter o nome e a cor de todas as peças
nome, cor (Peca) 
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
nome, cor (Peca) 
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Operação de Projeção
Exemplo: Obter o nome e a cidade de todas as peças de cor azul
nome, cidade (cor = azul (Peca) ) 
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
nome, cidade (cor = azul (Peca) ) 
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Junção Natural
É uma operação binária denotada por (R1 R2) onde R1 e R2 são relações com uma coluna em comum. O resultado da junção natural é uma relação com todas as linhas de R1 e de R2 que possuem a coluna em comum .
A coluna comum as relações R1 e R2 aparece uma única vez no resultado.
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Junção Natural
Exemplo: Sejam as relações:
 Pessoa Dados Residenciais
- Determine Pessoa Dados Residenciais.
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
 Pessoa Dados Residenciais
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Expressões com Operações Seleção e Projeção em Conjunto
A combinação das operações relacionais leva a uma expressão algébrica que age sobre uma ou mais relações. Essa combinação funciona como uma linha de montagem onde o resultado de uma operação é o operando da próxima.
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Exemplo: Seja a relação Conta. Selecione os clientes que possuem saldo maior ou igual a R$500,00.
Conta
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Exemplo: 
A sintaxe da operação relacional da seleção será dada por
 saldo >= 500 (conta)
Conta
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Exemplo: 
 saldo >= 500 (conta)
Resultado
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Exemplo: 
Fazendo a projeção do atributo Num da conta para a relação anterior:
num da conta ( saldo >= 500 (conta))
Resultado
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Exemplo: 
num da conta ( saldo >= 500 (conta))
Resultado
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Exemplo: Descobrir o nome completo e a data de admissão de todos os funcionários do sexo feminino.
funcionário
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Exemplo: 
1º - Selecionar os funcionários do sexo feminino 
Seleção: sexo = F (funcionários)
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Exemplo: 
Seleção: sexo = F (funcionários)
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Exemplo: 
2º - Projetar os atributos de interesse: NmFunc e DtAdm
Projeção: NmFunc,DtAdm (sexo = F (funcionários))
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Exemplo: 
NmFunc,DtAdm (sexo = F (funcionários))
*
*
Aula 8 – Relações e Banco de Dados 
Álgebra Relacional
Exemplo: Considere o BD de peças apresentado abaixo. Elabore os seguintes comandos em Álgebra Relacional:
a) Recuperar o nome e a cor das peças em SP.
b) Recuperar o código e o nome das peças que são vermelhas.
*
*
Aula 8 – Relações e Banco de Dados 
Recuperar o nome e a cor das peças em SP.
1 – Seleção – SP: CIDADE = SP (PEÇA)
*
*
Aula 8 – Relações e Banco de Dados 
Recuperar o nome e a cor das peças em SP.
2 – Projeção – NOME E COR:
 NOME,COR (CIDADE = SP (PEÇA))
*
*
Aula
8 – Relações e Banco de Dados 
b) Recuperar o código e o nome das peças que são vermelhas.
1 – Seleção – peças vermelhas: COR = VERMELHO (PEÇA)
*
*
Aula 8 – Relações e Banco de Dados 
b) Recuperar o código e o nome das peças que são vermelhas.
2 – Projeção – CÓDIGO E NOME:
 CÓDIGO, NOME (COR=VERMELHO(PEÇA))
*

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Continue navegando