Apostila de Algebra Relacional
-
Upload
alex-bernardo -
Category
Documents
-
view
283 -
download
1
Transcript of Apostila de Algebra Relacional
MATEMTICA DISCRETA
LGEBRA RELACIONAL
Prof. Luciano Braga de Lacerda 1 Prof. Henry Costa Lubanco
lgebra RelacionalA lgebra relacional um conjunto de operaes bsicas usadas para manipular relaes em um BD relacional. As operaes so geralmente divididas em dois grupos: operaes de conjuntos ou especficas.
2
Operaes de conjuntos: unio, insero, diferena e produto cartesiano. Operaes especficas: seleo, projeo e juno.Banco de Dados I Prof. Henry Costa Lubanco
3
Diagrama do Esquema de BD Relacional
Banco de Dados I Prof. Henry Costa Lubanco
BD Relacional de uma EMPRESA
4
Banco de Dados I Prof. Henry Costa Lubanco
Seleo ( - sigma) 1/2
5
Seleciona um subconjunto de tuplas de uma relao, que satisfazem uma condio de seleo (expressa no predicado). Em outras palavras, esta operao seleciona um subconjunto das linhas de uma tabela.Notao: ()
A expresso especificada em
A expresso corresponde a um dos operadores:
=, , , , and, ou, nao
A operao de seleo comutativa, ou seja:
( (R)) = ( (R))Banco de Dados I Prof. Henry Costa Lubanco
Seleo ( - sigma) 2/2
6
Repesentao Grfica
Exemplos:
(EMPREGADO) salario>3000 (EMPREGADO)DNO=4 (DNO=4 E SALARIO>25000) OU (DNO=5 E SALARIO>30000)
(a)
(EMPREGADO)
Banco de Dados I Prof. Henry Costa Lubanco
Projeo ( - pi) 1/2
7
Projeta as tuplas de uma relao sobre um determinado conjunto de atributos, ou seja, elimina colunas que no correspondem s especificadas. Exemplos:
Notao: ()
a) NOME, IDADE (ESTUDANTE) mostra somente os atributos contendo os nomes e as idades de todos os estudantes. b) CODCURSO (ESTUDANTE) mostra somente os cdigos dos cursos de todos os estudantes.
Banco de Dados I Prof. Henry Costa Lubanco
Projeo ( - pi) 2/2
8
Representao Grfica
Exemplos:
UNOME,PNOME,SALARIO(EMPREGADO).
SEXO, SALARIO
(EMPREGADO)
Banco de Dados I Prof. Henry Costa Lubanco
Combinao e seqncia de operaes
9
Combinando duas operaes:
Exemplo: UNOME,POME,SALARIO( NOD=5(EMPREGADO))
Seqncia de operaes: Vrias operaes podem ser combinadas para formar uma expresso da lgebra relacional, que uma consulta. Alternativamente, pode-se especificar relaes temporrias para cada passo da consulta. Por exemplo: ESTUD_C CODCURSO=C (ESTUDANTE) RESULT NOME, IDADE (ESTUD_C)Banco de Dados I Prof. Henry Costa Lubanco
Operadores de Conjuntos
10
UNIO efetua a unio de duas relaes compatveis (R U S) DIFERENA efetua a diferena entre duas relaes compatveis (R S) INTERSEO efetua a interseo de duas relaes compatveis (R S)
Exemplos:a)b) c) d) e)
Duas relaes compatveis. ALUNO U INSTRUTOR ALUNO INSTRUTOR ALUNO INSTRUTOR INSTRUTOR ALUNOBanco de Dados I Prof. Henry Costa Lubanco
11
Ilustrao do exemplo dado no slide anterior
Banco de Dados I Prof. Henry Costa Lubanco
Produto Cartesiano (X)
12
Combina as tuplas de duas relaes (R x S), relacionando cada linha de uma relao, com cada linha da outra, levando todos os atributos. Ou seja, o resultado ter todas as colunas das relaes envolvidas, com as suas linhas combinadas umas com as outras.
Banco de Dados I Prof. Henry Costa Lubanco
Exemplo de Produto Cartesiano
13
Cod_ Nome_Cidade Cidade
Capital
Cidade Estado. .UF UF
Nome_Estado
Regiao
12341234 2345 2345 1235 1235
Porto AlegrePorto Alegre So Paulo So Paulo Caxias do Sul Caxias do Sul
SS S S N N
RSRS SP SP RS RS
RSSP RS SP RS SP
Rio Grande do SulSo Paulo Rio Grande do Sul So Paulo Rio Grande do Sul So Paulo
SulSudeste Sul Sudeste Sul Sudeste
Banco de Dados I Prof. Henry Costa Lubanco
Exemplo usando BD Empresa
14
Exemplo:
EMP_FEM SEXO=F (EMPREGADO) NOMESEMP PNOME, UNOME, SSN (EMP_FEM)
DEPENDENTES_EMP NOMESEMP X DEPENDENTE DEPENDENTES_REAIS SSN=ESSN (DEPENDENTES_EMP) RESULTADO PNOME, UNOME, NOME_DEPENDENTE (DEPENDENTES_REAIS)
Banco de Dados I Prof. Henry Costa Lubanco
Ilustrao do exemplo dado no slide anterior
15
Banco de Dados I Prof. Henry Costa Lubanco
Juno( Join)
16
Juno: combina as tuplas de duas relaes que satisfazem uma determinada condio de juno (R S). Nesta operao como se fossem realizadas de uma s vez a seleo e o produto cartesiano.Exemplo:
DEPT_GER DEPARTAMENTO RESULTADO DNOME, UNOME, PNOME
GERSSN=SSN(EMPREGADO)
(DEPT_GER)
Banco de Dados I Prof. Henry Costa Lubanco
Exemplo de Juno
17
CIDADECod_ Cidade 1234 2345 1235
Cidade.UF = Estado.UF
ESTADOEstado. UF RS SP RS Nome_ Estado Rio Grande do Sul So Paulo Rio Grande do Sul Regiao
Nome_Cidade
Capital
Cidade. UF RS SP RS
Porto Alegre So Paulo Caxias do Sul
S S N
Sul Sudeste Sul
Banco de Dados I Prof. Henry Costa Lubanco
ExercciosRA 1 6 9 B 2 7 7 C 3 8 8
18
SB 2 2 7 C 3 3 8 D 4 5 10
R
A