• No se han encontrado resultados

Álgebra Relacional. Universidad de los Andes Demián Gutierrez Mayo

N/A
N/A
Protected

Academic year: 2021

Share "Álgebra Relacional. Universidad de los Andes Demián Gutierrez Mayo"

Copied!
59
0
0

Texto completo

(1)

Álgebra Relacional

Universidad de los Andes

(2)

2

Lenguajes de Consulta

Base de Datos

Relacional

placa marca MBO34L LDA75K ADA89A LBF78G XSA67D Ford Toyota Fiat Toyota Ford

Usuario

Aplicación

Otros...

Cons

ulta

Resu

ltad

o

Una consulta es básicamente una pregunta sobre un hecho en particular que puede o no existir en la BD El resultado de una consulta es una colección de registros de la BD (Una Relación)

Todos los autos marca Ford...

(Lenguaje de consulta) placa marca MBO34L XSA67D Ford Ford La consulta se realiza sobre las relaciones de la BD

(3)

Tipos de Lenguajes de Consulta

Son lenguajes que utilizan los usuarios para

solicitar información a la BD

Hay de dos tipos

Procedimentales

No-procedimentales

Lenguajes puros

Cálculo relacional de tuplas (N/P)

Cálculo relacional de dominios (N/P)

Álgebra relacional (P)

Estas son las bases de los lenguajes de

consulta comerciales

(4)

4

Tipos de Lenguajes de Consulta

Lenguajes comerciales

SEQUEL

QBE (N/P)

SQL (P + N/P)

OQL (P + N/P) (Y todos los [Object Oriented]QL)

...entre otros

El estándar “de facto” usado hoy en día en la

industria es el SQL, aunque con la incursión de

los SGBDOO, ORMs y tecnologías similares el

OQL y sus distintas alternativas y variantes son

(5)

Cálculo Relacional de Tuplas

Es un lenguaje de consulta formal que permite

expresar las consultas a partir de fórmulas

bien formadas, donde las variables son

interpretadas como variantes sobre las tuplas

de las tablas. Fue presentado por Codd en

1972 y se deduce del

Cálculo de Predicados

Una consulta en CRT es una expresión de tipo:

{t,e,x | C(t,e,x)}

Donde

t,e,x

son variables de tuplas y

C(t,e,x)

es

una expresión condicional donde intervienen

t,e,x

(6)

6

Cálculo Relacional de Tuplas

Átomos:

Las variables están asociadas a las tuplas de las tablas y se

denota como relación(variable). Ej:

Modelo(M)

.

Los valores constantes están asociados a los valores de los

dominios de los atributos y las funciones generadoras de los

mismos se denotan como

variable.atributo

. Ej:

M.marca

Los predicados utilizados se construyen con los operadores de

comparación {<,

, >,

, =,

} y constantes.

Ejm: M.marca

‘fiat’.

(7)

Cálculo Relacional de Tuplas

Una fórmula bien formada se define como:

Todo átomo es una fórmula bien formada F.

Si F1 y F2 son fórmulas bien formadas, entonces F1

and

F2, F1

or

F2,

not

F1 o

not

F2 son fórmula bien formada.

 F1 es una fórmula bien formada (Cuantificador

existencial, se lee, existe un...).

∀ F1 es una fórmula bien formada (Cuantificador

universal, se lee, para todo ...).

(8)

8

Cálculo Relacional de Tuplas

Ejemplo 1

: Obtener la fecha de nacimiento y la

dirección del empleado (o empleados) cuyo

nombre es 'Pedro Pérez':

Empleado(Cédula, Nombre, Apellido FechaN, Dirección)

{e.FechaN, e.Dirección | Empleado(e)

and

(9)

Cálculo Relacional de Tuplas

Ejemplo 2

: Obtener el nombre y la dirección de

todos los empleados que trabajan para el

departamento 'Investigación')

Empleado(Cédula, Nombre, Apellido FechaN, Dirección, NumDpto)

Dpto(NumDpto, NomDpto)

{e.Nombre, e.Dirección | Empleado(e)

and

(

d)

(Dpto(d)

and

e.NumDpto = d.NumDpto

and

(10)

10

Cálculo Relacional de Tuplas

Es un lenguaje de consulta formal que

permite expresar las consultas a partir de

fórmulas bien formadas, donde cada

variable se interpreta como variante

sobre el dominio del atributo de una

relación.

Es similar al Cálculo Relacional de

Tuplas y también se deduce del cálculo

de predicados

(11)

Cálculo Relacional de Dominios

Las variables están asociadas a los dominios de los

atributos y se denota como

relación(att1: variable1, att2: variable2, ... )

Ejm:

ModeloCarro(modelo: m, marca: c)

los predicados utilizados se construyen igual que

para el cálculo relacional de tuplas

(12)

12

Cálculo Relacional de Tuplas

Ejemplo 1

: Obtener el nombre y el color de

cada producto en almacén:

Producto(nroPro, nombrePro, cantidad, color)

{N, C |

Producto(nombrePro: N, color: C

,

cantidad > 0)}

(13)

Cálculo Relacional de Tuplas

Ejemplo 2

: Obtener los clientes que han comprado al

menos un producto de color verde:

Producto(nroPro, nombrePro, cantidad, color)

Venta(nroVen, fechaVen, nombreCliente, nroProVen, cantidadVen)

{ V, P |

NP Venta(nombreCliente: V, nroProVen:

NP)

and

Producto(nroPro: NP, nombrePro: P, color =

‘verde’) }

(14)

14

Álgebra Relacional

Es un conjunto de operaciones que describen

paso a paso (procedimental) la forma de

transformar

una serie de relaciones en otras

para así obtener una respuesta a una consulta

R2 = Operación1 (R1)

R3 = Operación2 (R2)

R5 = Operación2 (R3, R4)

...

Una operación de AR toma una serie de

relaciones de entrada y genera una relación

(15)

Álgebra Relacional (Operaciones)

Producto

Cartesiano

R x Q

Selección

σ

a,b

(R)

Proyección

a,b

(R)

Reunión

Natural

R |x|

a,b

Q

Unión

R

Q

Intersección

R

Q

Diferencia

R - Q

División

R

Q

Reunión

Externa

R

Q

Unión

Externa

Otras...

Funciones

Agregadas

Operación

Asignación

Conjunto completo

de operaciones del

álgebra relacional

(16)

16

Proyección

Carro placa marca modelo color MBO34L Ka verde

LDA75K blanco ADA89A siena gris

LBF78G blanco XSA67D Ka rojo Ford Toyota corollaXL Fiat Toyota corollaXL Ford R placa marca MBO34L LDA75K ADA89A LBF78G XSA67D Ford Toyota Fiat Toyota Ford

Q marca modelo color Ka verde siena gris blanco Ka rojo Ford Fiat Toyota corollaXL Ford

placa, marca

(Carro)

marca,modelo,color

(Carro)

Se eliminan todas

salvo una de las

tuplas repetidas

(Ej,

<Toyota,

corollaXL, blanco>

)

(17)

Proyección









rombos

(R)

R

R'

Todas las tuplas, pero no completas, sólo se

seleccionan algunas columnas...

Se eliminan

todas las tuplas

(18)

18

Producto Cartesiano

R placa marca ADA89A LBF78G XSA67D Fiat Toyota Ford

Q marca modelo color siena gris blanco Ka rojo Fiat Toyota corollaXL Ford

Carro placa modelo color

ADA89A siena gris

ADA89A blanco

ADA89A Ka rojo

LBF78G siena gris

LBF78G blanco

LBF78G Ka rojo

XSA67D siena gris

XSA67D blanco

XSA67D Ka rojo

marcaR marcaQ

Fiat Fiat

Fiat Toyota corollaXL Fiat Ford

Toyota Fiat

Toyota Toyota corollaXL

Toyota Ford Ford Fiat

Ford Toyota corollaXL

Ford Ford

Carro = R x Q

No es relevante

para el producto

cartesiano, pero es

notable, que en

algunas tuplas

marcaR = marcaQ

(19)

Producto Cartesiano

R'=R x Q

























R'







R





Q

Cada tupla de uno de los conjuntos se

(20)

20

Selección

R = σ

marca=Ford Λ color=rojo

(Carro)

Carro placa marca color

MBO34L Ford verde

LDA75K Toyota blanco ADA89A Fiat gris

LBF78G Toyota blanco

XSA67D Ford rojo

R placa marca color MBO34L verde

XSA67D rojo Ford

Ford

R placa marca color XSA67D Ford rojo Carro placa marca color

MBO34L Ford verde LDA75K Toyota blanco ADA89A Fiat gris

LBF78G Toyota blanco

XSA67D Ford rojo

(21)

Selección

σ

rombo=negro

(R)









R





R'

Se seleccionan sólo las tuplas que cumplen

una condición dada

(22)

22

Producto / Reunión Natural

R placa marca MBO34L Ford LDA75K Toyota ADA89A Fiat LBF78G Toyota XSA67D Ford

Q marca modelo color Ford Ka verde Toyota corollaXL blanco

Fiat siena gris Toyota corollaXL blanco

Ford Ka rojo

Carro placa marca modelo color

MBO34L Ford Ka verde

MBO34L Ford Ka rojo

LDA75K Toyota corollaXL blanco ADA89A Fiat siena gris

LBF78G Toyota corollaXL blanco

XSA67D Ford Ka verde

XSA67D Ford Ka rojo

Carro=R|x|

marca

Q

Sin embargo aquí

se perdió

información

(

Descomposición

con pérdida

)

Carro = σ

(R.marca=Q.marca)

(R x Q)

o bien:

Carro = R |x| Q

(23)

R'=R

círculo

Q







R'







R





Q

Producto / Reunión Natural

Producto cartesiano con condición de

igualdad, se combinan solo las tuplas con

(24)

24

Unión

R = E

P

E Cédula Nombre 9.644.667 Pedro Pérez 10.133.212 11.332.334 Luis Colina 12.562.884 20.126.112 Gabriel Mendoza Andrés Rojas Gilberto Zapata P Cédula Nombre 8.347.223 9.644.667 Pedro Pérez 10.133.212 11.332.334 Luis Colina 12.123.231 Hector Redondo Gabriel Mendoza Diego Dávila R Cédula Nombre 8.347.223 9.644.667 Pedro Pérez 10.133.212 11.332.334 Luis Colina 12.123.231 12.562.884 20.126.112 Hector Redondo Gabriel Mendoza Diego Dávila Andrés Rojas Gilberto Zapata

Se realiza una

operación de unión

de conjuntos. Se

eliminan las tuplas

repetidas

Las relaciones

usadas como

operandos deben

ser compatibles

entre si

(25)

Unión

Todas las tuplas de ambas relaciones (que

deben ser compatibles)

R'=R

Q









R'





Q

R





Se eliminan

todas las tuplas

(26)

26

Intersección

R = E

P

E Cédula Nombre 9.644.667 Pedro Pérez 10.133.212 11.332.334 Luis Colina 12.562.884 20.126.112 Gabriel Mendoza Andrés Rojas Gilberto Zapata P Cédula Nombre 8.347.223 9.644.667 Pedro Pérez 10.133.212 11.332.334 Luis Colina 12.123.231 Hector Redondo Gabriel Mendoza Diego Dávila R Cédula Nombre 9.644.667 Pedro Pérez 10.133.212 11.332.334 Luis Colina Gabriel Mendoza

Las relaciones

usadas como

operandos deben

ser compatibles

entre si

(27)

Intersección

Sólo las tuplas comunes a ambas relaciones

(que deben ser compatibles)

R'=R

Q



R'





Q

R





(28)

28

Diferencia

R = E - P

E Cédula Nombre 9.644.667 Pedro Pérez 10.133.212 11.332.334 Luis Colina 12.562.884 20.126.112 Gabriel Mendoza Andrés Rojas Gilberto Zapata P Cédula Nombre 8.347.223 9.644.667 Pedro Pérez 10.133.212 11.332.334 Luis Colina 12.123.231 Hector Redondo Gabriel Mendoza Diego Dávila R Cédula Nombre 12.562.884 20.126.112 Andrés Rojas Gilberto Zapata

¿Cómo sería P – E?

Las relaciones

usadas como

operandos deben

ser compatibles

entre si

(29)

Diferencia

Tuplas que aparecen en la primera relación

pero no en la segunda

R'=R - Q





R'







R





Q

¿Cómo sería Q – R?

(30)

30

División

Supongamos que tenemos dos

relaciones

A(x, y)

y

B(y)

donde el

dominio de

y

en

A

y

B

, es el mismo.

El operador división

A

B

retorna todos

los

distintos

valores de

x

tales que

para

todo valor

y

en

B

existe una tupla

<x,

(31)

División

R=EM

M'

M Materia Semestre BD 8 I S 8 LC 9 SO 9 M' Materia LC SO

M'=∏

materia

semestre=9

(M))

EM Cédula Materia 9.644.667 BD 9.644.667 IS 10.133.212 LC 10.133.212 BD 10.133.212 SO 11.332.334 LC 11.332.334 SO 12.562.884 LC

R=EM

M'

R Cédula 10.133.212 11.332.334

Luego...

(32)

32

División

Tuplas de la primera que contienen a todas o

alguna de las tuplas de la segunda

R'=R

Q

R'







R

Q

(33)

Producto / Reunión Externa

R = Prof

cédula=ced_jefe

Dpto

Profesor Cédula 6.274.445 01 7.422.114 01 8.347.223 02 9.644.667 02 11.332.334 Luis Colina 12.123.231 03 NombreP CodigoDpto José Mendez Juán Zapata Hector Redondo Pedro Pérez Diego Dávila Código 01 Computación 6.274.445 02 Investigación 03 Control 12.123.231

Dpto NombreD CédJefe

R Cédula Código

6.274.445 01 01 Computación 6.274.445 12.123.231 03 03 Control 12.123.231

NombreP CódigoDpto NombreD CédJefe

José Mendez Diego Dávila

¿Dónde están los demás profesores?

¿Dónde está el departamento de Investigación?

(34)

34

Producto / Reunión Externa

R = Prof

cédula=ced_jefe

Dpto

R Cédula Código

6.274.445 01 01 Computación 6.274.445

7.422.114 01 NULO NULO NULO

8.347.223 02 NULO NULO NULO

9.644.667 02 NULO NULO NULO

11.332.334 Luis Colina NULO NULO NULO

12.123.231 03 03 Control 12.123.231

NombreP CódigoDpto NombreD CédJefe

José Mendez Juán Zapata Hector Redondo Pedro Pérez Diego Dávila

Reunión Izquierda

Profesor Cédula 6.274.445 01 7.422.114 01 8.347.223 02 9.644.667 02

11.332.334 Luis Colina NULO

12.123.231 03 NombreP CodigoDpto José Mendez Juán Zapata Hector Redondo Pedro Pérez Diego Dávila Código 01 Computación 6.274.445 02 Investigación NULO 03 Control 12.123.231

(35)

Producto / Reunión Externa

R = Dpto

cédula=ced_jefe

Prof

R Código Cédula

01 Computación 6.274.445 6.274.445 01

NULO NULO NULO 7.422.114 01

NULO NULO NULO 8.347.223 02

NULO NULO NULO 9.644.667 02

NULO NULO NULO 11.332.334 Luis Colina

NombreD CédJefe NombreP CódigoDpto

José Mendez

Juán Zapata Hector Redondo

Pedro Pérez

Reunión Derecha

¿Es la misma relación resultante

que la de la transparencia anterior?

Profesor Cédula

6.274.445 01

7.422.114 01

8.347.223 02

9.644.667 02

11.332.334 Luis Colina NULO

12.123.231 03 NombreP CodigoDpto José Mendez Juán Zapata Hector Redondo Pedro Pérez Diego Dávila Código 01 Computación 6.274.445 02 Investigación NULO 03 Control 12.123.231

(36)

36

Producto / Reunión Externa

R = Dpto

cédula=ced_jefe

Prof

Profesor Cédula

6.274.445 01

7.422.114 01

8.347.223 02

9.644.667 02

11.332.334 Luis Colina NULO

12.123.231 03 NombreP CodigoDpto José Mendez Juán Zapata Hector Redondo Pedro Pérez Diego Dávila Código 01 Computación 6.274.445 02 Investigación NULO 03 Control 12.123.231

Dpto NombreD CédJefe

R Código Cédula

01 Computación 6.274.445 6.274.445 01

02 Investigación NULO NULO NULO NULO

03 Control 12.123.231 12.123.231 03

NombreD CédJefe NombreP CódigoDpto

José Mendez

(37)

Producto / Reunión Externa

R = Prof

cédula=ced_jefe

Dpto

Profesor Cédula

6.274.445 01

7.422.114 01

8.347.223 02

9.644.667 02

11.332.334 Luis Colina NULO

12.123.231 03 NombreP CodigoDpto José Mendez Juán Zapata Hector Redondo Pedro Pérez Diego Dávila Código 01 Computación 6.274.445 02 Investigación NULO 03 Control 12.123.231

Dpto NombreD CédJefe

R Cédula Código

6.274.445 01 01 Computación 6.274.445

NULO NULO NULO 02 Investigación NULO

12.123.231 03 03 Control 12.123.231

NombreP CódigoDpto NombreD CédJefe

José Mendez

(38)

38

Producto / Reunión Externa

R = σ

nombreP=NULO

(Dpto

cédula=ced_jefe

Prof)

Profesor Cédula

6.274.445 01

7.422.114 01

8.347.223 02

9.644.667 02

11.332.334 Luis Colina NULO

12.123.231 03 NombreP CodigoDpto José Mendez Juán Zapata Hector Redondo Pedro Pérez Diego Dávila Código 01 Computación 6.274.445 02 Investigación NULO 03 Control 12.123.231

Dpto NombreD CédJefe

R Código Cédula

02 Investigación NULO NULO NULO NULO

NombreD CédJefe NombreP CódigoDpto

¿Cuáles son los departamentos sin Jefe de

Departamento?

(39)

Producto / Reunión Externa

R = Dpto

cédula=ced_jefe

Prof

R Código Cédula

01 Computación 6.274.445 6.274.445 01

NULO NULO NULO 7.422.114 01

NULO NULO NULO 8.347.223 02

NULO NULO NULO 9.644.667 02

NULO NULO NULO 11.332.334 Luis Colina

02 Investigación NULO NULO NULO NULO

NombreD CédJefe NombreP CódigoDpto

José Mendez Juán Zapata Hector Redondo Pedro Pérez

Reunión Abierta

Profesor Cédula 6.274.445 01 7.422.114 01 8.347.223 02 9.644.667 02

11.332.334 Luis Colina NULO

12.123.231 03 NombreP CodigoDpto José Mendez Juán Zapata Hector Redondo Pedro Pérez Diego Dávila Código 01 Computación 6.274.445 02 Investigación NULO 03 Control 12.123.231

(40)

40

Reunión Externa

Si algunas tuplas de la izquierda no tienen

pareja en la derecha, entonces se rellena con

valores nulos

R'=R

círculo

Q







null

R'







R





Q

En este caso se está haciendo una

reunión externa izquierda (), pero se puede hacer también una reunión externa derecha () y una reunión

(41)

Agrupación (y Funciones Agregadas)

R =

nacionalidad

avg(edad), count

(P)

P Nombre Nacionalidad Edad Pedro Venezuela 45 Venezuela 20 Luis Argentina 33 Colombia 20 Miguel Argentina 23 Luis 34 Colombia 15 Gabriel Andrés Peru Gilberto R Nacionalidad AVG(Edad) Venezuela 32,5 2 Argentina 28 2 Colombia 17,5 2 Count Se agrupan los datos

usando algún tipo de criterio y luego se calculan funciones sobre

los datos agrupados

Posibles funciones de agregación: avg,

sum, max, min, count, entre otras

(42)

42

Agrupación (y Funciones Agregadas)

R =

círculo

count

(R)







R

1

2

1

R'

Se agrupan las tuplas en base al valor de

cierto atributo y luego se pueden calcular

funciones sobre atributos de las tuplas

agrupadas

(43)

Ejemplos de Álgebra Relacional

Esquema de Ejemplo:

Empleado

Apellido

Dirección Sexo Salario

ND

NombreP Inic

Ced FechaN

CedSuper

Departamento

NombreD NúmeroD

CedGte

FechaInicGte

Lugares_Deptos

NumeroD LugarD

Proyecto

NombreP NúmeroP LugarP

ND

Trabaja_En

Ced

NúmP

Horas

Dependiente

Sexo

Parentesco

(44)

44

Ejemplos de Álgebra Relacional

(45)

Ejemplos de Álgebra Relacional

(46)

46

TODO: Falta:

(47)

Lenguaje de Consultas QBE

Presentado por Zloff en el año 1977 y

comercializado desde 1980 por IBM.

Es un lenguaje de manipulación de datos

gráfico.

La idea de su construcción es la formulación

de la consulta mediante un ejemplo de la

posible respuesta.

Está basado en el Cálculo Relacional de

Dominios.

(48)

48

Lenguaje de Consultas QBE

Producto

nroPro

nombrePro

cantidad color

Producto

nroPro

nombrePro cantidad color

U.

_np

_c

_np

_c+100

‘rojo’

Las consultas se realizan invocando los esquemas de

las tablas objeto de la consulta, las cuales serán

desplegadas en forma gráfica en la pantalla. Una vez

obtenidas, se posiciona el ratón en la o las columnas

deseadas y se indica la operación a realizar.

(49)

Lenguaje de Consultas QBE

Las variables se indican con el símbolo de subrayado

como prefijo, ejemplo: _s, _3, _d5, o se subrayan,

ejemplo: s, 3, d5.

Las constantes se colocan

directamente en la

columna deseada

precedidas por el operador de

comparación deseado, si no es =.

Toda variable desplegable está cuantificada

implícitamente por el cuantificador existencial

Todas las operaciones deben tener como sufijo un

punto (Ver tabla siguiente)

(50)

50

Lenguaje de Consultas QBE

Operación

QBE

Desplegar o seleccionar

P.

Cuantificador universal

ALL.

Contar

CNT.

Promedio

AVG.

Suma

SUM.

Calcular el valor mínimo

MIN.

Calcular el valor máximo

MAX.

Agrupar tuplas

G.

Ordenar en orden ascendente

AO.

Ordenar en orden descendente

DO.

Negación lógica

¬

Disyunción lógica

OR

Conjunción lógica

AND

Condiciones adicionales

se expresan en una

ventana aparte, en

algunos SGBD. Las

funciones

cnt

,

avg

,

sum

,

min

y

max

deben

aplicarse a variables

precedidas con ALL. Si

no se desean eliminar

las tuplas dobles en una

proyección, se coloca

P.ALL._v

(51)

Lenguaje de Consultas QBE

Producto

(nroPro, nombrePro, cantidad, color)

Venta

(nroVen, fechaVen, nombreCliente,

nroProVen

, cantidadVen)

Compra

(nroCom, fechaCom, nombreProveedor,

nroProCom

, cantidadComp)

(52)

52

Procesamiento de Consultas

(Lo Básico)

Análisis

Léxico

(separar en

tokens)

Optimizador

de

Consultas

Procesamiento

de la

Consulta en la

BD

Análisis

Sintáctico

y Validación

SELECT nombre, cedula

FROM persona

WHERE cedula='12.343.223'

UPDATE departamento

SET nombre='Control'

WHERE codigo=1

(53)

Procesamiento de Consultas

(Lo Básico)

Conmutatividad de σ

σ

c1

c2

(R)) = σ

c2

c1

(R))

Cascada de ∏ (se ignoran todas menos la última)

lista1

(∏

lista2

(∏

lista3

(R))) = ∏

lista1

Cascada de σ

σ

c1 and c2 and c3

(R) = σ

c1

c2

c3

(R)))

Conmutación de σ con ∏

lista

c1

(R)) = σ

c1

(∏

lista

(R))

Conmutatividad de |x| o

R1

c

R2 = R2

c

R1

(54)

54

Procesamiento de Consultas

(Lo Básico)

apellido, nombrePR

(

σ

numeroPR=numPR AND cedulaEMP=cedula AND

nombrePR='Acuario' AND horas < 20

(

Empleado|x| Trabaja_En |x|Proyecto))

Proyecto (

numeroPR

, nombrePR, descripcion)

Empleado (

cedula

, nombre, apellido, fecha_nac)

Trabaja_En (

cedulaEMP

,

numPR

, horas, categoria)

(55)

Optimización de Consultas

X

Empleado

Trabaja_En

Proyecto

X

σ

numeroPR=numPR

AND

cedulaEMP=cedula

AND

nombrePR='Acuario'

AND

horas < 20

apellido, nombrePR

(56)

56

Optimización de Consultas

X

Empleado

Trabaja_En

Proyecto

X

σ

numeroPR=numPR

cedulaEMP=cedula

nombrePR='Acuario'

horas < 20

σ

σ

σ

apellido, nombrePR

(57)

Optimización de Consultas

X

Empleado

Trabaja_En

Proyecto

X

numeroPR=numPR

cedulaEMP=cedula

nombrePR='Acuario'

horas < 20

σ

σ

σ

σ

apellido, nombrePR

(58)

58

Optimización de Consultas

X

Empleado

Trabaja_En

Proyecto

X

numeroPR=numPR

cedulaEMP=cedula

nombrePR='Acuario'

horas < 20

σ

σ

σ

σ

numeroPR,

nombrePR

apellido, nombrePR

cedulaEMP,

numPR, horas

cedulaEMP,

nombrePR

cedula,

apellido

(59)

Gracias

Referencias

Documento similar

La regla d’integritat d’unicitat de la clau primària estableix que si el conjunt d’atributs CP és la clau primària d’una relació R, aleshores l’ex- tensió de R no pot tenir

• Enviar el dibujo junto a la hoja de inscripción al concesionario Toyota más cercano o a la sede de Toyota España Avenida de Bruselas, 22.?. ¿Cómo participar si eres un

Sin embargo, esta definición no está libre de ambigüedades. Véase que: i) las solicitudes se realizan mediante los algoritmos fundados en el álgebra relacional cuyos resultados,

De non ser así, as facturas non poderán tramitarse para o pago, e a USC, a través do responsable de asuntos económicos do centro da USC que solicitou os seus servicios Rexeitará

Si para construir y evaluar una FBF necesitamos una interpretación y un LPO, para todo esquema de base de datos relacional (BDR) y para cada estado de base de datos

dni nombre dirección 21333555 LUISA c/A, 3 22444666 PEPE c/C, 33 21777333 ANA c/E, 333 ASIGNATURA. código

ALFA ROMEO AUDI BMW CHRYSLER DODGE FIAT GM HONDA JEEP LEXUS MERCEDES MITSUBISHI PEUGEOT RENAULT TOYOTA VW ALFA ROMEO AUDI BMW CHRYSLER DODGE FIAT GM HONDA JEEP LEXUS MERCEDES

The engine ECU calculates the optimum valve timing under the various operating conditions in accordance with the engine speed, intake air volume, throttle position, and