Vous êtes sur la page 1sur 16

INTRODUO A LGEBRA RELACIONAL

Base Dados II- Ano/013

dr. Aurlio Ribeiro

lgebra relacional
lgebra relacional uma linguagem terica com operadores que trabalham com uma ou mais relaes para definir outra relao sem alterar a relao original. lgebra relacional conhecida como linguagem de relao em tempo real, isso significa que todas as tuplas possivelmente venham de diferentes relaes, so manipuladas em uma declarao.

Existem cinco operaes fundamentais:


1. SELECO 2. PROJECO 3. UNIO 4. DIFERENA 5. PRODUTO CARTESIANO

Os operadores tem como argumentos relaes de entrada e devolvem uma relao como resultado.

1.Seleco ou Restrio ()
Seleco ou Restrio: A operao de seleco trabalha em uma relao simples R e define a relao que contm apenas as tuplas (linhas) de R que satisfaz a condio (predicado).

Notao:
Predicado mais complexos podem ser constituidos por: (AND), (OR), e ~ (NOT). So utilizadas os operadores: =,

, , , > e <.

1.Seleco ou Restrio ()
EXEMPLO:

A= a2
B b3 b2 b4 C = A B C c4 a2 b3 c4 c1 a2 b4 c4 c4

A= a2 A a2 a1 a2

2.Projeco ()
Projeco: A operao de projeco trabalha em uma relao simples R e define a relao que contm um subconjunto vertical de R, extraindo valores de atributos especificados e eliminando valores duplicados.
Notao:

O resultado a relao com n colunas obtidas eliminando as colunas que no esto na lista; Os tuplos duplicados so removidos.

2.Projeco ()
EXEMPLO:

A,C

A,C A a2 a1 a2

b3 c4 b2 c1 b4 c4

a2 c4 a1 c1

3.Unio (U)
Unio: A unio de duas relaes R e S com M e N tuplas, respectivamente obtida concatenando em uma relao onde o mximo de tuplas (M+N); tuplas duplicadas so eliminadas.

Notao: RUS Para R U S ser valida: 1. R, S devem ter igual nmero de atributos; 2. Os domnios dos atributos tem de ser compativeis. (p. ex: os valores da 2a coluna de R so do
mesmo tipo dos valores da 2a coluna de S)

3.Unio (U)
Unio: R

US
B b2 b1 b4 b3 C U A B C = A B C c1 a2 b3 c2 a1 b2 c1 c2 a1 b2 c1 a5 b1 c2 c4 a2 b4 c4 a2 b4 c4 c3 a3 b3 a3 a2 b3 c2

A a1 a5 a2 a3

4.Diferena (-)
Diferena: A operao diferena define uma relao consistindo em tuplas que esto na relao R mas no esto na relao S; R e S tem que ser uma unio compatvel.

A a1 a5 a2 a3

B b2 b1 b4 b3

C - A B C =A B C c1 a2 b3 c2 a5 b1 c2 c2 a1 b2 c1 a3 b3 a3 c4 a2 b4 c4 c3

5. Produto Cartesiano (x)


Produto Cartesiano: Define a concatenao de todas as tuplas da relao R com todas as tuplas da relao S. i.e. multiplica duas relaes para definir outra consistindo em todos os pares de tuplas possveis dentre duas relaes. Notao: R x S
A a1 a5 a2 B x C D = A b2 c2 d3 a1 b1 c1 d2 a1 b4 a5 a5
a2 a2

B b2 b2 b1 b1

C c2 c1 c2 c1

D d3 d2 d3 d2

b4 c2 d3 b4 c1 d2

6. Interseco de conjuntos ( )
Interseco: A operao de interseco consiste em atribuir todas as tuplas que esto em R e S. R e S tem que ser uma unio compatvel entre si.

A a1 a5 a2 a3

B b2 b1 b4 b3

C c1 c2 c4 c3

A a2 a1 a2

B b3 b2 b4

C = A B C c2 a1 b2 c1 c1 a2 b4 c4 c4

Exerccios
1. Dada a relao a) Calcule 2. Dada a relao a) Calcule

Exerccios
3. Dada a relao a) Calcule R U S 4. Dada a relao a) Calcule R - S
R

Exerccios
5. Dada a relao R x S

Exerccios
Usando algebra relacional:
Tabela Aluno Cod_Aluno Nome 11 Mauro 10 Paula 12 Ana 7 Sandra Sexo Idade M F F F 14 15 17 16

a) Seleccione os alunos de sexo masculino.


b) Projecte a tabela aluno, alternando os seus campos em funo da chave primaria por forma a mostrar os alunos com idade superior a 15 anos.

23 Carlos

17

Vous aimerez peut-être aussi