Buscar

Álgebra Relacional

Prévia do material em texto

Álgebra Relacional 
O Docente: 
Jordão Uache 
Agenda 
1. Conceito de Álgebra Relacional 
 
2. Operações da Álgebra Relacional 
 
 1. 
Conceito 
Álgebra Relacional 
É uma linguagem formal que consiste de uma série 
de operações que: 
 Actuam sobre relações, 
 Produzem novas relações com resultado, sem 
alterar as relações originais, 
 Podem ser combinadas para produzir expressões 
mais complexas. 
 
Álgebra Relacional 
Maneira teórica de se manipular a base de dados 
relacional. Constitui o conjunto básico de operações 
do modelo relacional. 
 
 2. 
Operações 
Álgebra Relacional 
As operações possibilitam especificar inquirições 
básicas de consulta, sendo que o resultado de uma 
consulta é uma nova relação, formada a partir de 
uma ou mais relações. 
 
Os operadores da álgebra relacional podem ser 
divididos em dois grupos distintos: 
 
 2. 
Operações 
2.1. Operações específicas de Bases de 
 Dados Relacionais 
São operadores especiais definidos especialmente 
para a manipulação de tuplas, tais como: 
 Selecção, 
 Projecção e 
 Junção. 
 
 2. 
Operações 
2.2. Operações da Teoria de Conjuntos 
São operadores típicos definidos pela álgebra para 
conjunto, tais como: 
 União, 
 Intersecção, 
 Diferença e 
 Produto Cartesiano. 
 
Recapitulação 
 
Propriedades: 
Não existem tuplas/linhas 
duplicadas, 
Não existem nomes de colunas 
duplicados, 
A ordem das colunas e tuplas é 
irrelevante, 
As entradas nas colunas são do 
mesmo domínio. 
Tabelas de consulta 
 2.1.1. 
Selecção 
2.1. Operações específicas de Bases de 
 Dados Relacionais 
É utilizada para selecionar um conjunto de tuplas de 
uma relação que satisfaçam a condição de selecção. 
2.1.1 Selecção - Exemplo 
 
 Imprima os atletas que sejam da modalidade 1. 
Resultado ϬAtletaModalidade=1 (ATLETA) 
 2.1.2. 
Projecção 
2.1. Operações específicas de Bases de 
 Dados Relacionais 
É utilizada para selecionar um conjunto de 
atributos/colunas de uma relação. 
2.1.2 Projecção - Exemplo 
 
 Imprima o número e nome dos atletas. 
Resultado πAtletaNum, AtletaNome (ATLETA) 
 
 Liste, para cada atleta da modalidade 2, o seu número e o número da 
modalidade. 
 
Resultado πAtletaNum, AtletaModalidade (ATL) 
2.1 Projecção vs Selecção - Exemplo 
ATL ϬAtletaModalidade=𝟐 (ATLETA) 
ou 
Resultado πAtletaNum, AtletaModalidade (ϬAtletaModalidade=𝟐 (ATLETA)) 
ou 
Resultado ϬAtletaModalidade=𝟐 (πAtletaNum, AtletaModalidade (ATLETA)) 
 2.1.3. 
Junção 
2.1. Operações específicas de Bases de 
 Dados Relacionais 
É utilizada para combinar tuplas relacionadas de 
duas relações em uma única tupla. 
 
 
Onde onde R e S são relações e <cond> é uma 
condição de junção entre as relações. 
2.1.3 Junção - Exemplo 
 
 Liste, para cada atleta, o seu número, nome e o nome da modalidade 
a que pertence. 
ATL_Mod ATLETA (AtletaModalidade=ModalidadeNum) MODALIDADE 
Resultado πAtletaNum, AtletaNome, ModalidadeNome (ATL_Mod) 
 2.1.4. 
EquiJunção 
2.1. Operações específicas de Bases de 
 Dados Relacionais 
A operação de Junção mais comum, denominada 
Equijunção, envolve apenas condições de junção com 
comparações de igualdade. 
 
Resultado R * S , onde R e S são relações. 
 
Uma Equijunção onde dois atributos da comparação 
têm o mesmo nome é chamada Junção Natural, sendo 
denotado por “*”, neste caso um dos atributos da 
comparação aparece na relação resultante e a condição 
de junção não é especificada. 
 2.2.1. 
Produto 
Cartesiano 
2.2. Operações da Teoria de Conjuntos 
Representado por “x”, é utilizado para combinar 
tuplas de duas relações. Relações não precisam ter 
atributos comuns. 
 
 
As tuplas da relação resultante são todas 
combinações de tuplas possíveis entre as relações 
participantes. 
 
 
2.2.1 Produto Cartesiano - Exemplo 
 
 Liste, para cada atleta, o seu número, nome e o nome da modalidade 
a que pertence. 
 
 
 
 
PROD_ATL_Mod ATLETA x MODALIDADE 
2.2.1 Produto Cartesiano - Exemplo 
Continuação… 
 
ATL_MOD ϬAtletaModalidade= ModalidadeNum (PROD_ATL_MOD) 
 
Resultado πAtletaNum, AtletaNome, ModalidadeNome (ATL_MOD) 
 
2.2.2 União 
 UNIÃO: Simbolicamente usa-se “U” 
 R U S : lê-se R união com S 
 A união de duas relações R e S, resulta numa terceira relação contendo 
todas que pertençam à R e a S, ou a ambas, eliminado as tuplas 
duplicadas 
 
2.2.2 Diferença 
 Diferença: Simbolicamente usa-se “−” 
 R − S : lê-se R menos S 
 A diferença das relações R e S, é o conjunto de todas as tuplas que estão 
em R mas não estão em S. R e S devem ser compatíveis para união. 
 
2.2.2 Intersecção 
 Intersecção: Simbolicamente usa-se “∩” 
 R ∩ S : lê-se R intersecção S 
 Define uma relação que contêm todo o conjunto de tuplas que 
pertencem simultaneamente à relação R e S e ambos conjuntos devem 
ser “compatíveis para a união”. 
FIM

Mais conteúdos dessa disciplina