Álgebra Relacional

quinta-feira, 29 de outubro de 2009
Álgebra Relacional


1) Quantos e Quais são os grupos nos quais a álgebra relacional está dividida? Identifique quais operações pertencem a cada um deles.


R: A álgebra relacional é dividida em dois grupos, que são:

Union: A operação de união para funcionar tal como na teoria dos conjuntos necessita que as relações a se unir tenham o mesmo número de atributos e que os domínios dos atributos correspondentes coincidam.

Intersection: A operação de interseção retorna uma relação que contém as tuplas que estejam em ambas as relações argumentos da interseção.

Difference: A operação diferença encontra as tuplas que estão em uma relação mas não estão na outra. Para encontrar os usuários do banco que na agência Madureira tenham conta corrente mas não tenham empréstimos pode-se escrever

Cartesian Product: O Produto Cartesiano de duas relações é denotado por ´. O resultado da operação r1 ´ r2 é uma nova relação com uma tupla para cada possível par de tuplas de r1 e r2. Para evitar ambigüidade os atributos tem seus nomes concatenados com os nomes das relações a que pertencem.

Depois vem o SELECT,PROJECT e JOIN que são para o desenvolvimento de operações desenvolvidas para base de dados relacionais.


2) Explique a Operação SELECT e PROJECT. Quando usar, Para que usar, Como usar, diferenças, etc.

R: Select: seleção de subconjuntos de tuplas de uma relação, ele é utilizado quando for necessário selecionar um registro ou uma tabela, a seleção é utilizada para formar uma condição de seleção composta.
Como usar:

SELECT*FROM TABELA.

Project: quando necessário selecionar e descartar colunas de uma tabela que serve para projeção de atributos, pode ser utilizado PROJECT quando ha necessidade de listar atributos.
Como usar (exemplo):

NOME_C, ENDEREÇO_C, TELEFONE (CLIENTE).


3) Explique a Operação UNION, INTERSECTION e DIFFERENCE. Quando usar, Para que usar, Como usar, etc.

R: A operação UNION é uma operação binária que cria uma relação partindo de duas outras relações, estabelecendo assim, a união de todas as tuplas dessa nova relação.

INTERSECTION é uma operação binária que cria uma relação partindo de duas outras relações, estabelecendo assim a intersecção das duas, gerando uma nova relação as quais estarão presentes apenas os dados pertencentes às duas condições pré-estabelecidas.

DIFFERENCE É uma operação que cria uma relação partindo de duas outras relações, o qual resultará em uma nova relação que contenha todas as tuplas que pertençam à primeira relação e não pertença à segunda.
Entretanto UNION E INTERSECTION são utilizadas em operações comutativas.


4) Explique a Operação CARTESIAN PRODUCT. Quando usar, Para que usar, Como usar, etc.

R: Operação binária que permite a combinação de informações de duas relações quaisquer, assim a relação resultante conterá todas as tuplas da primeira relação relacionadas às da segunda relação. Seu símbolo é: ×.Exemplo: K = conjunto de todos os códigos dos moradores de “Petrópolis” L = conjunto de todos os códigos de filmes de 2001
C = K × L
#C - #F
C3 - F3
C3 - F5
C5 - F3
C5 - F5

5) Explique as Operações de junção (JOIN) e divisão (DIVISION). Quando usar, Para que usar, Como usar, etc.

R: Esta operação tem como objetivo unir duas tabelas, as quais possuem um atributo em comum. Este tipo de operação é muito utilizado quando tratamos de relacionamentos com chaves estrangeiras, em que é realizada uma seleção a partir dos atributos de um relacionamento sobre um produto cartesiano das tabelas. Seu símbolo é: x.
Clientes|X|Locação = σ Clentes.#C = Locação.#C (Clientes x Locação)
Exemplo:
πnome, idade(σ #F = F2 (Clientes |X| Locação))

Nome - Idade

João - 21
Carlos- 41
Carol - 60
Carol - 60

É apresentado os nomes e as idades dos clientes que alugaram o filme de código “F2”. Observa-se a repetição da cliente Carol, pois esta realiza duas locações do mesmo filme. Para resolvermos este problema, pode-se utilizar a operação de Junção Natural (Natural Join), na qual obtemos o mesmo resultado, porém sem repetições.

Nome - Idade
João - 21
Carlos - 41
Carol - 60


6) Explique as Operações de AGREGAÇÃO. Quando usar, Para que usar, Como usar, etc.

R: Uma operação de agregação calcula um valor Simples de uma coleção de valores, ou seja, reunir os registro de tabela, em grupos sobre os quais podem ser aplicadas funções agregadas, como Soma (SUM), Media (AVG), Maximo (MAX), Mínimo (MIN), Contar (COUNT).
Exemplo usando SQL contar quantos registros existem na tabela Cliente: Select count(*) from Cliente

0 comentários:

Postar um comentário