algebra relacional 1

Post on 03-Jul-2015

567 Views

Category:

Documents

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

INTRODUCCIÓNINTRODUCCIÓN

Un lenguaje de consulta es en el que el Un lenguaje de consulta es en el que el usuario solicita información de la base usuario solicita información de la base de datos: se construye una expresión de datos: se construye una expresión que contesta interrogantes sobre la que contesta interrogantes sobre la instancia actual de la base.instancia actual de la base.

Se vera un lenguaje puro que es rígido Se vera un lenguaje puro que es rígido y formal, pero que ilustra las técnicas y formal, pero que ilustra las técnicas fundamentales para la extracción de la fundamentales para la extracción de la información: el información: el Algebra RelacionalAlgebra Relacional

CONCEPTOS BÁSICOSCONCEPTOS BÁSICOS

Una Base de Datos Relacional muestra las tablas en forma de filas y columnas

Ciudad (num_ciu, nomb_ciu)

a1 La paz

a5 Santa Luz

a6 Tarija

a9 potosí

Dominio: Es el conjunto de todos los valores permitidos que una columna puede tomar. Se tiene D1, D2,..., Dn, si tenemos n columnas.

Producto Cartesiano: De lo anterior se tiene V1∈D1,V2∈D2, ... , Vn∈Dn , porque cada elemento está en el dominio respectivo. En matemáticas podemos decir que la tupla es un elemento del producto cartesiano de los dominios:

(v1,v2,....,vn)∈(D1xD2x.....xDn) =Xi=1,n(Di)

TUPLAS: Cada una de las filas de una tabla se compone de n elementos (V1,V2,..,Vn). En matemáticas este conjunto ordenado de elementos se llama tupla

RELACION: Es un subconjunto del producto cartesiano de una lista de dominios, no necesariamente disjuntos Es por esto que en el álgebra relacional se denomina relación a una tabla y tupla a un fila de tabla.

SIMBOLOS DE LENGUAJESIMBOLOS DE LENGUAJE

Los símbolos de lenguaje son: Símbolos de Puntuación: paréntesis "(", ")" y coma

",". Símbolos de variables: se representan mediante letras

minúsculas del final del alfabeto: r, s, t, u, v, w, x, y, z. Símbolos de constantes: se representan mediante

letras minúsculas del principio del alfabeto: a, b, c, d, e. Símbolos de funciones: también se representan con

letras minúsculas, pero del centro del alfabeto: f, g, h, i.. Símbolos de predicados: se representan mediante

letras mayúsculas. Operadores lógicos: ¬ (negación), ¬ (implicación), ∨

(conjunción) y ∧ (disyunción). Cuantificadores: ∀ (cuantificador universal) y ∃

(cuantificador existencial).

LAS OPERACIONES DEL LAS OPERACIONES DEL ALGEBRA RELACIONALALGEBRA RELACIONAL

Las operaciones de álgebra relacional manipulan relaciones. Esto significa que estas operaciones usan uno o dos relaciones existentes para crear una nueva relación. Esta nueva relación puede entonces usarse como entrada para una nueva operación.

El algebra relacional consta de nueve operaciones UniónIntersecciónDiferenciaProductoSelecciónProyecciónReuniónDivisiónRenombrar

UNIÓN(UNIÓN(∪∪))

•La operación de unión permite combinar datos de varias relaciones. •No siempre es posible realizar consultas de unión entre varias tablas, para poder realizar esta operación es necesario e imprescindible que las tablas a unir tengan las mismas estructuras, que sus campos sean iguales.

Ejemplo: Teniendo dos relaciones R y S, R∪S, es el conjunto de filas que pertenecen a R, a S o a ambas. R y S deben tener esquemas con conjuntos idénticos de atributosR

Nombre Dirección FechaJuan Díaz C/Pez,10 9-9-62Ana Gómez C/Luna,3 8-3-58

SNombre Dirección FechaJuan Díaz C/Pez,10 9-9-62Luís Díaz C/Sol,5 8-5-67

R∪S Nombre Dirección FechaJuan Díaz C/Pez,10 9-9-62Ana Gómez C/Luna,3 8-3-58Luís Díaz C/Sol,5 8-5-67

INTERSECCIÓN (∩)INTERSECCIÓN (∩)

• La operación de intersección permite identificar filas que son comunes en dos relaciones. Al igual que la operación Unión, para poder realizar esta operación es necesario e imprescindible que las tablas a unir tengan las mismas estructuras, que sus campos sean iguales

• Ejemplo: : Teniendo dos relaciones R y S, R∩S, es el conjunto de filas que pertenecen a R y a S.

R Nombre Dirección FechaJuan Díaz C/Pez,10 9-9-62Ana Gómez C/Luna,3 8-3-58

SNombre Dirección FechaJuan Díaz C/Pez,10 9-9-62Luís Díaz C/Sol,5 8-5-67

R∩SNombre Dirección FechaJuan Díaz C/Pez,10 9-9-62

DIFERENCIA(-)DIFERENCIA(-)

• La operación diferencia permite identificar filas que están en una relación y no en otra.

Ejemplo: La diferencia de dos relaciones R y S, R-S, es el conjunto de filas de R que no pertenecen a S. R y S deben tener esquemas con conjuntos idénticos de atributos

R Nombre Dirección FechaJuan Díaz C/Pez,10 9-9-62Ana Gómez C/Luna,3 8-3-58

SNombre Dirección FechaJuan Díaz C/Pez,10 9-9-62Luís Díaz C/Sol,5 8-5-67

R-SNombre Dirección FechaAna Gómez C/Luna,3 8-3-58

PRODUCTO (X)PRODUCTO (X)

• La operación producto consiste en la realización de un producto cartesiano entre dos tablas dando como resultado todas las posibles combinaciones entre los registros de la primera y los registros de la segunda. Esta operación se entiende mejor con el siguiente

Ejemplo: Sean R y S dos relaciones de grado m y n, respectivamente. El producto cartesiano, R X S, es una relación de grado m + n formada por todas las posibles tuplas en las que los m primeros elementos constituyen una tupla de R y los n últimos una tupla de S

A B

1 2

3 4

RR B C D

2 5 6

4 7 8

9 10 11

SS

A R.B S.B C D

1 2 2 5 6

1 2 4 7 8

1 2 9 10 11

3 4 2 5 6

3 4 4 7 8

3 4 9 10 11

R X SR X S

SELECCIÓN (σ)

•Formato de Uso: σ (condición) (RELACION) Esta operación es la que normalmente se conoce como consulta.

En este tipo de consulta se emplean los diferentes operadores de comparación (=,>, <, >=, <=, <>) y los operadores lógicos ∧ (and), ∨ (or), ¬ (not)

)( ValorColumnaOPERADOR

EmpleadoEmpleado

Cedula Nombre

Apellido

Sexo Sueldo

8721882

Luís Pacheco

M 1600000

1140837

Janeth Rozo F 2000000

9632584

Carmelo

Osorio M 1200000

1142365

Valeria Rozo F 1800000

8542631

Julián Román M 1500000

1123659

Lucrecia

Mejia F 1563000

EJEMPLOSEJEMPLOS

Muestra el resultado de las siguientes selecciones: σ cedula = 8721882 (EMPLEADO)

Cedula Nombre

Apellido

Sexo Sueldo

8721882

Luís Pacheco

M 1600000

Cedula Nombre

Apellido

Sexo Sueldo

1140837

Janeth Rozo F 2000000

1142365

Valeria Ortega F 1800000

1123659

Lucrecia

Mejia F 1563000

σ sexo = ‘F’ (EMPLEADO)

PROYECCION (PROYECCION ())

• Una proyección es una selección en la que seleccionamos aquellos campos que deseamos recuperar.

• Formato de uso (lista de atributos)

(Relación)

EJEMPLOEJEMPLOSS

• Muestra el resultado de las siguientes proyecciones:

R Nombre Dirección FechaJuan Díaz C/Pez,10 9-9-62Ana Gómez C/Luna,3 8-3-58

nombre, fecha (R)

R Nombre FechaJuan Díaz 9-9-62Ana Gómez 8-3-58

• cedula, salario (EMPLEADO)

Cedula Sueldo

8721882 1600000

1140837 2000000

9632584 1200000

1142365 1800000

8542631 1500000

1123659 1563000

Reunión (Join) θ

• La reunión se utiliza para recuperar datos a través de varias tablas conectadas unas con otras mediante cláusulas JOIN. La operación reunión se puede combinar con las operaciones selección y proyección

REUNION NATURALREUNION NATURAL

• La reaunión natural es una operación binaria que permite combinar ciertas selecciones y un producto cartesiano en una sola operación y elimina los atributos repetidos.

A B

12412

C D

aabab

B

13123

D

aaabb

E

A B

11112

C

aaaab

E

r sD

EJEMPLOEJEMPLOHay dos relaciones R y SHay dos relaciones R y S

DIVISION (DIVISION (÷)

• Operación del álgebra relacional que crea una nueva relación, seleccionando las filas en una relación que se corresponden con todas las filas en otra relación.

Tabla A

Código Producto

1035

2241

2249

5818

Código

Comercial

Código Producto

10 2241

23 2518

23 1035

39 2518

37 2518

10 2249

23 2249

23 2241

Tabla B

División

Código Comercial

23

RENOMBRAR RENOMBRAR

• Permite referirse a una relación por más de un nombre.

Ejemplo: x (E)Devuelve la expresión E bajo el nombre XSi la expresión del algebra relacional E tiene

aridad n, entonces x (A1, A2, …, An) (E)devuelve el resultado de la expresiónE bajo

el nombre X, y con los atributos renombrados a A1, A2, …., An.

FUNCIONES DE FUNCIONES DE AGREGACIONAGREGACION

• Las funciones de agregación toma una colección de valores y retorna un solo valoR como resultado.

avg: valor promediomin: valor mínimomax: valor máximosum: suma de valorescount: número de valores

RESUMENRESUMEN

• El álgebra relacional define un conjunto de operaciones algebraicas que operan sobre tablas y devuelven tablas como resultado. Estas operaciones se pueden combinar para obtener expresiones que expresan las consultas deseadas. El álgebra define las operaciones básicas usadas en los lenguajes de consulta relacionales

top related