Está en la página 1de 10

ALGEBRA RELACIONAL

DESARROLLO

1. Operaciones de conjuntos en relaciones

Su principal objetivo es la manipulación del contenido de una instancia de la base de datos con
el fin de obtener contenido de interés. Comenzaremos nuestro análisis de algebra relacional
examinando las dos operaciones unarias.

Relación Peliculas
Titulo Año Duración tipoPelicula nombreEstudio nombreActor
Lucy 2014 01:29:00 Color Universal Scarlett
Johansson
Logan 2017 02:17:00 Color Fox Hugh
Jackman
Lucy 2014 01:29:00 Color Universal Choi Min Sik
Deadpool 2016 01:48:00 Color Fox Ryan
Reynolds
It 2017 02:15:00 Color Warner Bros Bill Skarsgard
Tabla 1 Relación Peliculas

2. Proyección

La proyección es una de las principales operaciones y es de tipo unario, es decir, solo actúa
sobre una sola relación. Sirve para omitir columnas o atributos que no sean necesarios en la
consulta. Se representa con la siguiente notación.

𝜋(𝑥,𝑦,𝑧…𝑛) ( 𝑅 )
Donde:
• 𝜋 : Nos indica que se está refiriendo a una proyección.
• 𝑥, 𝑦, 𝑧. . 𝑛: Son todos los atributos que se desean mostrar en la consulta.
• 𝑅 : Es la relación a la cual se le aplica la proyección.
Ejemplo, según la Tabla 1, supongamos que queremos obtener solo el título, año y nombre de
estudio, la proyección en este caso quedaría así.
𝜋(𝑇𝑖𝑡𝑢𝑙𝑜, 𝐴ñ𝑜, 𝑛𝑜𝑚𝑏𝑟𝑒𝐸𝑠𝑡𝑢𝑑𝑖𝑜) ( 𝑃𝑒𝑙𝑖𝑐𝑢𝑙𝑎𝑠 )

Arrojaría como resultado la siguiente tabla

Titulo Año nombreEstudio


Lucy 2014 Universal
Logan 2017 Fox
Deadpool 2016 Fox
It 2017 Warner Bros
Tabla 2 Resultado de la proyección

Fíjese que en la Tabla 1 hay dos filas con título Lucy, pero en la proyección de la Tabla 2 solo
aparece 1, esto se debe a que el resultado de las dos filas es el mismo y no tiene sentido mostrar
información repetida, pero si además se hubiera incluido el nombre del actor en la proyección si
tendrían que aparecer las dos filas, pues ya no son iguales.

3. Selección

Consiste en recuperar un conjunto de registros de una tabla o relación indicando las


condiciones que deben cumplir dichos registros. En otras palabras, los registros devueltos por
la selección han de satisfacer todas las condiciones que se hallan establecido en la operación.
Normalmente se le conoce como consulta. Es una operación unaria.

Se representa con la siguiente notación:

𝜎(𝑐𝑜𝑛𝑑𝑖𝑐𝑖𝑜𝑛) ( 𝑅 )
Donde:
• 𝜎 : Nos indica que se está haciendo referencia a una selección.
• 𝑐𝑜𝑛𝑑𝑖𝑐𝑖𝑜𝑛:
Es la condición a cumplir para seleccionar los registros. En la condición o predicado se
pueden usar varias operaciones como son:

o Comparación:
Los registros son comparados con un valor determinado usando expresiones

> (𝑚𝑎𝑦𝑜𝑟 𝑞𝑢𝑒), < (𝑚𝑒𝑛𝑜𝑟 𝑞𝑢𝑒), ≥ (𝑚𝑎𝑦𝑜𝑟 𝑜 𝑖𝑔𝑢𝑎𝑙 𝑞𝑢𝑒),


≤ (𝑚𝑒𝑛𝑜𝑟 𝑜 𝑖𝑔𝑢𝑎𝑙 𝑞𝑢𝑒), = (𝑖𝑔𝑢𝑎𝑙 𝑎)
o Lógico:
Los operadores lógicos sirven más que todo para unir expresiones de
comparación, por ejemplo, si 𝑒𝑑𝑎𝑑 > 18 𝐴𝑁𝐷 𝑛𝑜𝑚𝑏𝑟𝑒 = 𝑝𝑒𝑑𝑟𝑜.
Encontramos las siguientes expresiones

∧ (𝐴𝑁𝐷) , ∨ (𝑂𝑅), ¬(𝑁𝑂𝑇)

• 𝑅 : Es la relación a la cual se le aplica la selección.

Ejemplo 1, según la Tabla 1, supongamos que queremos obtener solo las películas cuyo
nombre de estudio sea Fox, la selección en este caso quedaría así.

𝜎(𝑛𝑜𝑚𝑏𝑟𝑒𝐸𝑠𝑡𝑢𝑑𝑖𝑜="𝐹𝑜𝑥") ( 𝑃𝑒𝑙𝑖𝑐𝑢𝑙𝑎𝑠 )
Arrojaría como resultado la siguiente tabla

Titulo Año Duración tipoPelicula nombreEstudio nombreActor


Logan 2017 02:17:00 Color Fox Hugh
Jackman
Deadpool 2016 01:48:00 Color Fox Ryan
Reynolds

Tabla 3 Resultado de la selección, ejemplo 1

Ejemplo 2, se quieren el nombre y duración de las películas cuyo año sea menor o igual a el
2016

𝜎(𝐴ñ𝑜 ≤ 2016) ( 𝑃𝑒𝑙𝑖𝑐𝑢𝑙𝑎𝑠 )


Se obtiene:

Titulo Año Duración tipoPelicula nombreEstudio nombreActor


Lucy 2014 01:29:00 Color Universal Scarlett
Johansson
Lucy 2014 01:29:00 Color Universal Choi Min Sik
Deadpool 2016 01:48:00 Color Fox Ryan
Reynolds
Tabla 4 Resultado de la selección, ejemplo 2
Fíjese que al momento de hacer el estamento o predicado en la selección el tipo de dato hay
que tenerlo en cuenta, cuando se refiere a un número o booleano simplemente se coloca el
atributo, el operador y el numero o elemento en cuestión, pero al referirse a una cadena como
en el ejemplo 1, se le agregan las comillas.

4. Producto cartesiano

El producto cartesiano es una operación realizada a dos conjuntos o relaciones R y S, se


obtiene otra relación con tuplas más largas y con información apareada. Se denota 𝑅 𝑥 𝑆,
respetándose el orden, primero los atributos de R seguido los de S.
Importante, cuando las entidades tienen atributos con nombres iguales es totalmente necesario
renombrarlos como, por ejemplo, nombre de la entidad seguido del nombre del atributo.

Nota: Mirar el video de ejemplo sobre producto cartesiano en los recursos de esta guía.

Luego de mirar el ejemplo, se muestra como las entidades repiten el atributo B y es


renombrado R.B y S.B en la entidad resultante eliminando así cualquier ambigüedad.

Ejemplo, considerando R y S dos entidades el producto cartesiano matemáticamente quedaría


de la siguiente manera:

Figura 1 Producto Cartesiano R x S

R x S = {(a,x), (a,y), (a,z), (b,x), (b,y), (b,z), (c,x), (c,y), (c,z)}

Considere a cada elemento de R y S tuplas, y cada pareja de R x S (x,x) una tupla resultante.

Nota: Es necesario revisar el video de ejemplo para que quede el tema totalmente claro.

5. Reunión natural y theta

a. Reunión Natural

En un producto cartesiano R x S donde R y S son dos entidades, cada atributo de R se


parea con todos los atributos de S, entonces, en la Reunión Natural el pareamiento
ocurre si y solo si, los atributos coinciden en las dos entidades. Cuando esto ocurre el
resultado es una tupla denominada tupla reunida y la reunión se denota con 𝑹 ⋈ 𝑺.
Ejemplo:
Mirar el video de ejemplo de reuniones naturales en los recursos de esta guía
.

b. Reunión theta

A diferencia de la natural, ésta brinda unos criterios al parear tuplas provenientes de


dos relaciones y no una condición especifica. Una condición arbitraria denotada por la
letra C.
La representación de una reunión theta de las relaciones R y S que se funda en la
condición C es

𝑅 ⋈𝐶 𝑆
Los pasos para determinar una reunión theta son:

o Se toma el producto de R y S.
o Se seleccionan en el producto solo las tuplas que cumplan con la condición C.

A B C B C D
1 2 3 2 3 4
6 7 8 2 3 5
9 7 8 7 8 10
Tabla 5 Relación U Tabla 6 Relación V

Ejemplo 1: Considere la operación 𝑈 ⋈𝐴<𝐷 𝑉, donde U y V son las relaciones de la Tabla 5 y


Tabla 6 respectivamente. Considerando las 9 tuplas del producto, hay que comparar si el
componente A de la tupla U es menor que el componente D de la tupla V.
La primera tupla de U con componente A de 1, se parea exitosamente con cada una de las
tuplas de V. Pero, la segunda y tercera tupla de U, con los componentes A de 6 y 9
respectivamente, se parean exitosamente solo con la última tupla de V. Así

A U.B U.C V.B V.C D


1 2 3 2 3 4
1 2 3 2 3 5
1 2 3 7 8 10
6 7 8 7 8 10
9 7 8 7 8 10
Tabla 7 Resultado de 𝑈 ⋈𝐴<𝐷 𝑉
Ejemplo 2: Se determinó la siguiente reunión theta más compleja en las mismas relaciones U y
V.

𝑈 ⋈𝐴<𝐷 𝐴𝑁𝐷 𝑈.𝐵≠𝑉.𝐵 𝑉

A U.B U.C V.B V.C D


1 2 3 7 8 10
Tabla 8 Resultado de 𝑈 ⋈𝐴<𝐷 𝐴𝑁𝐷 𝑈.𝐵≠𝑉.𝐵 𝑉

6. Renombramiento

Esta operación cambia el nombre de la relación y sus atributos sí así es requerido y es denota
de la siguiente manera

𝜌𝑆(𝐴1,𝐴2…𝐴𝑛 ) (𝑅)

para renombrar una relación R. La relación resultante tiene las mismas tuplas que R pero con
nombre S. Ahora bien, sí solo se quiere cambiar el nombre de R por S, basta con decir
𝜌𝑆 (𝑅)
Ejemplo: Retomando el ejemplo 1 de la reunión theta antes mencionada, a la Tabla 7 se le
puede aplicar renombramiento, buscando una forma más limpia de mostrar la información.
Cambiar los nombres de los atributos V.B y V.C por sus equivalentes X e Y. Así

𝑈 ⋈𝐴<𝐷 𝜌𝑉(𝑋,𝑌,𝐷) (𝑉)

Obteniendo como resultado la tabla

A B C X Y D
1 2 3 2 3 4
1 2 3 2 3 5
1 2 3 7 8 10
6 7 8 7 8 10
9 7 8 7 8 10
Tabla 9 Resultado de 𝑈 ⋈𝐴<𝐷 𝜌𝑉(𝑋,𝑌,𝐷) (𝑉)

7. Consultas con combinación de operaciones

Se pueden combinar las operaciones como proyección, selección, producto, etc. junto a
operadores como intersección, unión, diferencia, etc. con el fin de lograr consultas más
complejas y que requieran una abstracción más minuciosa de los datos.
Lo más común es construir subexpresiones usando paréntesis.

Titulo Año Duración tipoPelicula nombreEstudio


Lucy 2014 01:29:00 Color Universal
Deadpool 2016 01:48:00 Color Fox
It 2017 02:15:00 Color Warner Bros

Tabla 10 Relación Peliculas

Ejemplo: Suponga que se requieren los títulos y años de las películas realizadas por el estudio
Fox y que sean de tipo color.
Se resolverá de dos maneras, una usando el operador ∩ y otra usando en AND lógico dentro de
una expresión de selección.
Usando ∩

𝜋𝑇𝑖𝑡𝑢𝑙𝑜,𝐴ñ𝑜 (𝜎𝑡𝑖𝑝𝑜𝑃𝑒𝑙𝑖𝑐𝑢𝑙𝑎="𝑐𝑜𝑙𝑜𝑟" (𝑃𝑒𝑙𝑖𝑐𝑢𝑙𝑎𝑠) ∩ 𝜎𝑛𝑜𝑚𝑏𝑟𝑒𝐸𝑠𝑡𝑢𝑑𝑖𝑜="𝐹𝑜𝑥" (𝑃𝑒𝑙𝑖𝑐𝑢𝑙𝑎𝑠))

Usando AND

𝜋𝑇𝑖𝑡𝑢𝑙𝑜,𝐴ñ𝑜 (𝜎𝑡𝑖𝑝𝑜𝑃𝑒𝑙𝑖𝑐𝑢𝑙𝑎="color" 𝐴𝑁𝐷 𝑛𝑜𝑚𝑏𝑟𝑒𝐸𝑠𝑡𝑢𝑑𝑖𝑜="𝐹𝑜𝑥" (𝑃𝑒𝑙𝑖𝑐𝑢𝑙𝑎𝑠))

El resultado sería

Titulo Año Duración tipoPelicula nombreEstudio


Deadpool 2016 01:48:00 Color Fox
EJERCICIOS/ACTIVIDADES

Titulo Año Duración tipoPelicula nombreEstudio


Lucy 2014 01:29:00 Color Universal
Deadpool 2016 01:48:00 Color Fox
It 2017 02:15:00 Color Warner Bros
Wonder Woman 2017 02:21:00 Color Warner Bros
Relación Peliculas – Ejercicios

• Represente usando la proyección solo el título, duración y nombre de estudio, haga la


tabla resultante.
• Represente usando selección las películas del año 2017.
• Represente usando proyección y selección el titulo de las peliculas cuyo estudia sea
Warner Bros.
• Represente usando Reunión Theta 𝑈 ⋈𝐶>𝐷 𝑉, según las Tablas 5 y 6.
BIBLIOGRAFIA

• Jeffrey, U, Introducción a los sistemas de bases de datos, Ed. Pearson Educación, 1999.
• De Miguel, A.; Piattini, M, Concepción y Diseño de Bases de Datos. Del Modelo E/R al Modelo
Relacional. Ed. RaMa, 1993.
• Santos, E, Bases de Datos.,Ed. Servicio Publicaciones de la E.U. de Informática, 1998.
• Fernández, C, El Modelo Relacional de Datos: De los Fundamentos a los Modelos Deductivos. Ed.
Diaz de Santos, 1987.
• Date, C, Introducción a los Sistemas de Bases de Datos , Ed. AddisonWesley Iberoamericana, 1990.
• Hursch, C; Hursh, J, SQL. El Lenguaje de Consulta Estructurado, Ed. RaMa, 1998.
• Kprth, H, Fundamentos de Bases de Datos, Ed. McGrawHill, 1998.
• Hector García-Molina, Jeffrey Ullman, and Jennifer Widow, Database systems: the complete book,
Addison Wesley, 2001.
• Pang-Ning Tan, Michael Steinbach, Vipin Kumar, Introduction to datamining, Addison Wesley,
2006
• Hastie Trevor, Tibshirani Robert, Friedman Jerome, The elements of stadistical learning: data
mining, inference, and prediction, Springer, 2009

También podría gustarte