Está en la página 1de 20

UNIVERSIDAD NACIONAL “PEDRO RUIZ GALLO”

“AÑO DE LA LUCHA CONTRA LA CORRUPCIÓN E IMPUNIDAD”

ESCUELA
COMPUTACION E INFORMATICA

CURSO
BASE DE DATOS

TEMA
ALGEBRA RELACIONAL

DOCENTE
ING.LECCA ORREGO GIULIANA

INTEGRANTES
MALCA CABRERA WALTER BRYAN
GARCIA VALLEJOS JORDY

LAMBAYEQUE, 14 de noviembre del 2019


ALGEBRA RELACIONAL

I. INTRODUCCION

Las operaciones del modelo relacional, el álgebra relacional se inspira


en la teoría de conjuntos para especificar consultas en una base de datos
relacional. Para especificar una consulta en álgebra relacional, es preciso
definir uno o más pasos que sirven para ir construyendo, mediante
operaciones de álgebra relacional, una nueva relación que contenga los datos
que responden a la consulta a partir de las relaciones almacenadas. Los
lenguajes basados en el álgebra relacional son procedimentales, dado que los
pasos que forman la consulta describen un procedimiento.

II. DEFINICION DE TERMINOS

1. Algebra: es un sistema matemático que está formado por:


a) Operandos: Valores o variables con los cuáles se pueden construir
nuevos valores o variables
b) Operadores: Símbolos que especifican nuevos objetos desde
objetos dados

2. Algebra relacional:
- Sus operandos son relaciones (instancias) o variables que
representan relaciones Sus operadores están diseñados para
hacer las tareas más comunes que se necesitan para manipular
relaciones en una base de datos.
- Definida por Codd, 1972
- Colección de operadores que toman relaciones como operandos y
devuelven relaciones como resultado
- El Álgebra Relacional lo componen un conjunto de operaciones
extraídas del Álgebra de Conjuntos. Estos operadores(O) se
aplicarán sobre relaciones (conjuntos) y darán lugar a nuevas
relaciones (nuevos conjuntos):

- Los operadores se aplican a una extensión r de una relación R, no


a un esquema de relación.
- Los operadores definidos permitirán expresar la componente de
selección de las operaciones del LMD.

-
- Una característica destacable de todas las operaciones del álgebra
relacional es que tanto los operandos como el resultado son
relaciones. Esta propiedad se denomina cierre relacional.

III. CONCEPTO

El álgebra relacional es un lenguaje de consulta procedimental. Consta


de un conjunto de operaciones que toman como entrada una o dos relaciones
y producen como resultado una nueva relación. Las operaciones
fundamentales del álgebra relacional son selección, proyección, unión,
diferencia de conjuntos, producto cartesiano y renombramiento. Además de
las operaciones fundamentales hay otras operaciones, por ejemplo,
intersección de conjuntos, reunión natural, división y asignación. Estas
operaciones se definirán en términos de las operaciones fundamentales.

IV. CLASIFICACION DE OPERACIONES

Las operaciones del álgebra relacional han sido clasificadas según


distintos criterios; de todos ellos indicamos los tres siguientes:

1. Según se pueden expresar o no en términos de otras operaciones.

a. Operaciones primitivas: son aquellas operaciones a partir de


las cuales podemos definir el resto. Estas operaciones son la
unión, la diferencia, el producto cartesiano, la selección y la
proyección.
b. Operaciones no primitivas: el resto de las operaciones del
álgebra relacional que no son estrictamente necesarias,
porque se pueden expresar en términos de las primitivas; sin
embargo, las operaciones no primitivas permiten formular
algunas consultas de forma más cómoda. Existen distintas
versiones del álgebra relacional, según las operaciones no
primitivas que se incluyen. Nosotros estudiaremos las
operaciones no primitivas que se utilizan con mayor
frecuencia: la intersección y la combinación.
2. Según el número de relaciones que tienen como operandos:

a. Operaciones binarias: son las que tienen dos relaciones como


operandos. Son binarias todas las operaciones, excepto la
selección y la proyección.
b. Operaciones unarias: son las que tienen una sola relación
como operando. La selección y la proyección son unarias.

3. Según se parecen o no a las operaciones de la teoría de conjuntos:

a. Operaciones conjuntistas: son las que se parecen a las de la


teoría de conjuntos. Se trata de la unión, la intersección, la
diferencia y el producto cartesiano.
b. Operaciones específicamente relacionales: son el resto de las
operaciones; es decir, la selección, la proyección y la
combinación.

V. CARACTERISTICAS

 El álgebra relacional está basada en la Teoría de Conjuntos


 Una característica de todas las operaciones del álgebra relacional
es que tanto los operandos como el resultado son relaciones
 Esta propiedad se denomina cierre relacional
 Aunque como operandos se pueden tener dos relaciones, el
resultado siempre será una relación
VI. RELACIÓN CON LA TEORÍA DE CONJUNTOS

1. Operaciones Conjuntistas: Se parecen a las de la teoría de conjuntos:


- Unión
- Intersección
- Diferencia
- Producto Cartesiano
2. Operaciones específicamente relacionales: No se parecen a las de
Teoría de Conjuntos:
- Selección
- Proyección
- Combinación

VII. OPERACIONES

1. OPERACIÓN DE SELECCIÓN
 Obtención del subconjunto de tuplas de una relación que satisface
una determinada expresión lógica o predicado de selección.
 Permite obtener las tuplas que cumplen una cierta condición.
 Sintaxis:

σ<condicion>(< relacion >)


Donde:
Condición es una condición lógica sobre valores de los
atributos de las tuplas resultado. Relación es una relación o
expresión relaciona.
 Sea R una relación y θ una condición
σθ(R)
da como resultado otra relación con esquema igual que el de R con
instancia el conjunto de tuplas de las instancias de R que cumplen
con θ.
 EJEMPLO 01:

- σ APELLIDO1=GONZALEZ (EMPLEADO)
- σSUELDO>3000 (EMPLEADO)
- σAPELLIDO1=GONZALEZ and SUELDO>3000 (EMPLEADO)
- σnot (APELLIDO1=GONZALEZ and SUELDO>3000) (EMPLEADO)
- σAPELLIDO1=APELLIDO2 (EMPLEADO)

 EJEMPLO 02:
Asumiendo el siguiente esquema de la relación alumno.
Esquema_alumno = (codigo_alu, nombre_alu,
direccion_alu, sexo_alu, fechanac_alu, codigo_esc)
Seleccionar el conjunto de tuplas cuyo código de escuela sea igual
a ingeniería en computación e informática.

σ (alumno)
codigo_esc=‘CI’

Se permiten las comparaciones: = ≠ < > ≤ ≥ en el predicado de


selección. Además, se pueden combinar varios predicados en uno
mayor utilizando las conectivas y (Λ) y o (Ѵ).
Ejemplo: Seleccionar las tuplas que sean de sexo masculino de la
escuela de ingeniería en computación e informática.

σ Λ (alumno)
codigo_esc=‘CI’ sexo_alu=‘M’

Esquema_alumno = (codigo_alu, nombre_alu,


direccion_alu, edad_alu, cicloingreso_alu, sexo_alu,
fechanac_alu, codigo_esc)

Ejemplo: Seleccionar las tuplas de alumnas de la escuela de


Estadística que ingresaron el 2016-I

σ codigo_esc=‘EE’ Λ cicloingreso_alu = ‘2016-I’ Λ

sexo_alu=‘F’
(alumno)

 EJEMPLO 03:

B
 EJEMPLO 04:

2. OPERACIÓN PROYECCION

 Se define sobre un subconjunto de atributos de una relación,


seleccionando únicamente valores no repetidos en todas las tuplas
para esos atributos.
 Permite obtener las tuplas con un cierto conjunto de atributos.
 Sintaxis:

π<lista_atributos> (< relacion >)


Donde: lista_atributos es una lista de atributos a aparecer en la
relación resultado.
Relacion es una relación o expresión relaciona.

 Sea R una relación.


πA1 ,...,An (R)
Da como resultado otra relación
Con esquema (A1, . . . , An)
Con tuplas formadas a partir de las de R tomando los valores
para los atributos A1, . . . , An

 Es una operación unitaria que devuelve su relación de argumentos,


excluyendo algunos argumentos.
 La proyección se denota con la letra griega pi (Π).

Observación: Como no se admiten tuplas repetidas, al realizar


una proyección, podrían quedar menos tuplas que en la
relación de partida.

 EJEMPLO 01:

- πSEXO,SUELDO (EMPLEADO)

 EJEMPLO 02:
Asumiendo el siguiente esquema de la relación alumno.
Esquema_curso = (codigo_cur, nombre_cur, ciclo_cur,
creditos_cur, ht_cur, hp_cur, codigo_esc)
Seleccionar los cursos que pertenezcan al 8vo ciclo de la escuela de
matemática cuyo número de créditos sea mayor a 3, mostrando
solo el nombre del curso y sus créditos.

σ Λ Λ (curso)
ciclo_cur=8 codigo_esc=‘MM’ creditos_cur>3

Π (σ Λ Λ
nombre_cur, creditos_cur ciclo_cur=8 codigo_esc=‘MM’

(curso) )
creditos_cur>3

ERROR

σ ciclo_cur=8 Λ codigo_esc=‘MM’ Λ creditos_cur>3 (Π nombre_cur,

creditos_cur
(curso) )
 EJEMPLO 03:

3. OPERACIÓN UNION

 Conjunto de todas las tuplas (sin repetición) incluidos en ambas


relaciones El esquema de relación no se modifica.
 Permite obtener la Unión de dos relaciones tomadas como
conjuntos de tuplas.
 Sintaxis:

(< relacion >) U (< relacion >)


donde: relacion es una relación o expresión relacional
 Sean R y S dos relaciones con igual esquema (o compatible).
 La operación:

(R ∪ S)
da como resultado otra relación cuyo esquema es igual al de
R (y S) y tiene como conjunto de tuplas a la unión de las de R
y las de S.
 Dadas dos relaciones A y B del mismo tipo, la unión de ambas
relaciones escrita como A υ B, es una relación del mismo tipo, que
contiene las tuplas t tal que t pertenece a A, a B o a ambas.

CONDICIONES PARA LA UNIÓN

- Primera. - Que ambas tengan los mismos atributos, es decir, el


esquema de A deben ser iguales al esquema de B.
- Segunda.- Los dominios del atributo n-esimo de la relación A
debe ser igual al dominio del atributo n-esimo de la relación
B.

 EJEMPLO 01:

4. OPERACIÓN DIFERENCIA
 Permite obtener la Diferencia de dos relaciones tomadas como
conjuntos de tuplas.

 Sintaxis:

(< relacion >) − (< relacion >)


donde: relacion es una relación o expresión relacional

 Sean R y S dos relaciones con igual esquema (o compatible).


 La operación:

(R − S)
da como resultado otra relación cuyo esquema es igual al de R (y S)
y tiene como conjunto de tuplas a la resta de las de R menos las de
S.

 Dadas dos relaciones A y B del mismo tipo, la diferencia de ambas


relaciones, escrita como A-B (en este orden), es una relación del
mismo tipo, que contiene las tuplas t tal que t pertenece a A, pero
no a B.
 EJEMPLO 01:

5. PRODUCTO CARTESIANO

 Conjunto formado por la concatenación de todas las tuplas de


ambas relaciones
 Permite obtener el Producto Cartesiano de dos relaciones tomadas
como conjuntos de tuplas.
 Sintaxis:

(< relacion >) × (< relacion >)


 Sean R y S dos relaciones con esquemas (A1, . . . , An) y (B1, . . . ,
Bm) respectivamente.
 La operación:
(R × S)
Da como resultado otra relación cuyo esquema es (A1, . . . , An, B1,
. . . , Bm) y cuyas tuplas son generadas por todas las combinaciones
posibles de las de R con las de S.

 EJEMPLO 01:
 EJEMPLO 02:

 EJEMPLO 03:
6. OPERACIÓN INTERSECCION

 Conjunto de tuplas que pertenecen a ambas relaciones


 Permite obtener la Intersección de dos relaciones tomadas como
conjuntos de tuplas.
 Sintaxis:

(< relacion >) \ (< relacion >)


 Sean R y S dos relaciones con igual esquema (o compatible).
 La operación:

(R ∩ S)
da como resultado otra relación cuyo esquema es igual al de R (y S)
y tiene como conjunto de tuplas a la intersección de las de R y las
de S.

 EJEMPLO 01:

7. OPERACIÓN DIVISIÓN

 Conjunto de tuplas de la primera (R1) que contienen a la segunda


(R2) y sin ésta última
 Sean R y S dos relaciones con esquemas (A1, . . . , An, B1, . . . , Bm)
y (B1, . . . , Bm) respectivamente.
 La operación:

(R ÷ S)
Da como resultado otra relación cuyo esquema es (A1, . . . , An)
y su contenido son las tuplas tomadas a partir de las de r (R)
tales que su valor (a1, . . . , an) está asociado en r (R) con TODOS
los valores (b1, . . . , bm) que están en s (S)

 Define una relación sobre el conjunto de atributos C = R – S, incluido


en la relación R, y que contiene el conjunto de valores de C, que en
las tuplas de r están combinadas con cada una de las tuplas de s.
 Se debe cumplir que S este incluido en R
 Equivalencia

 EJEMPLO 01:

 Obtener los empleados que trabajan en todos los proyectos


 trabaja / proyecto

 EJEMPLO 02:

8. OPERACIÓN COMBINACION
 Tuplas del producto cartesiano que cumplen una condición
determinada.

9. OPERACIÓN COMBINACION NATURAL

 Tuplas del producto cartesiano que cumplen la condición de


igualdad

 EJEMPLO 01:

Dar los nombres de fabricantes y la descripción de los productos


que vende
Dar descripción y precio de productos vendidos por Juan.

VIII. CONCLUSIONES

- Del algebra relacional se desglosan muchos puntos importantes


donde aplicarás distintas operaciones algebraicas mediante
operadores, en los que te permitirán realizar operaciones y
consultas. Como lenguaje de consulta utiliza técnicas
fundamentales para la extracción de la información. Así como
dentro del álgebra relacional tiene sus operaciones fundamentales
que muestran una serie de secuencia, en la cual se desea realizar
una consulta o mediante una operación básica o derivada. Las
operaciones de modificaciones siempre serán necesarias para
hacer una corrección dentro de tu base de datos, no olvides que
es importante estudiar cada elemento del álgebra relacional, ya
que de aquí parte el lenguaje SQL

También podría gustarte