Aula11 CalculoRelacional

1481 palavras 6 páginas
Cálculo Relacional
Fonte Principal: Prof. Vania Bogorny

Introdução


Permite a descrição da consulta desejada sem especificar os procedimentos para obtenção das informações



Na lógica de primeira ordem pode-se pensar como uma linguagem de consulta de duas formas:
 Calculo relacional de tuplas
 Cálculo relacional de domínio



A diferença está no nível em que são utilizadas as variáveis:
Nível de Atributo para os Dominios
 Nivel de Tuplas


Introdução




O cálculo é uma linguagem de consulta formal onde escrevemos uma expressão declarativa para especificar uma solicitação de recuperação
A expressão especifica O QUE será recuperado, em vez de COMO será recuperado
 Linguagem

de consulta não-procedural, o que o difere da álgebra, onde descrevemos uma sequência de operações
 Qualquer consulta que possa ser expressa na álgebra pode ser expressa no cálculo
 Ambas tem o mesmo poder de expressão

Introdução


Existem consultas em linguagens que não podem ser expressas na álgebra ou no calculo relacional
 Algumas

linguagens de consulta são mais completas que a álgebra e o cálculo, devido as operações de agregação e ordenamento

Cálculo Relacional de Tuplas


Expressão geral:
{ t | COND(t) }

t= variável de tupla
COND(t) = é uma expressão condicional envolvendo t
Resultado da consulta = conjunto de todas as tuplas t que satisfazem COND(t)


Exemplo: encontrar todas as tuplas de empregado com salário acima de
1200,00
Notação Silberchatz: { t | t  empregado  t[salario] > 1200}
Notação Navathe: { t | empregado(t) AND t.salario > 1200}

Leitura: o conjunto de todas as tuplas t tal que exista uma tupla t na relação empregado para a qual o valor no atributo salario seja maior que 1200 reais

Cálculo Relacional de Tuplas


Na consulta { t | empregado(t) AND t.salario > 1200}

Cada tupla de EMPREGADO que satisfaça a condição de salario>1200 é recuperada
t.Salario referencia o atributo salario da variavel de tupla t (similar ao
SQL)

Cálculo Relacional

Relacionados