Apostila de Algebra Relacional

download Apostila de Algebra Relacional

of 22

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