Operadores del Álgebra Relacional

Cada operador del álgebra relacional acepta una o dos relaciones como entrada y retorna una nueva relación como resultado. Los operadores σ (selección) y Π (proyección) son unarios, mientras que el resto son binarios.

Operaciones Básicas

Selección (σ)

Permite seleccionar un subconjunto de tuplas de una relación (R) que cumplan una condición (P): σP(R).

Proyección (Π)

Permite extraer columnas (atributos) de una relación: ΠA1, A2, ..., An(R).

Producto Cartesiano (x)

Combina todas las tuplas de una relación (R) con cada una de las tuplas de otra relación (S): R x S.

Unión (∪)

Retorna el conjunto de tuplas que están en R, o en S, o en ambas: R ∪ S. R y S deben ser uniones compatibles.

Diferencia (-)

Entrega todas las tuplas que están en R, pero no en S: R - S. R y S deben ser uniones compatibles.

Operaciones Derivadas

Intersección (∩)

Se define en función de la diferencia: R ∩ S = R - (R - S). Representa las tuplas presentes en ambas relaciones.

Unión Natural (⋈)

Combina proyección, selección y producto cartesiano para reconstruir tablas. La condición es la igualdad entre la clave primaria y la clave externa: R ⋈ S.

Reunión Theta (θ-Join)

Equivalente a una selección sobre el producto cartesiano: R ⋈θ S. Si θ es una igualdad, se denomina EquiJoin.

División (/)

Dados A(x, y) y B(y), A / B retorna los valores de x presentes en A para todos los valores de y en B.

Agrupación (Ģ)

Permite agrupar tuplas y aplicar funciones de agregación: Ģ sum(puntos) as Total Equipo (PARTIDOS).

Álgebra Relacional Extendida

Proyección Generalizada

Extiende la proyección permitiendo funciones aritméticas: Πfunciones(relación).

Funciones de Agregación

Toman una colección de valores y retornan un valor resumen: G función(argumento)(relación). Ejemplos: sum, avg, count, min, max.

Reunión Externa

Maneja la información ausente.

  • Reunión Natural (⋈): Genera una relación con toda la información.
  • Reunión Externa Izquierda (⟕): Incluye todas las tuplas de la relación izquierda, rellenando con nulos si no hay coincidencia en la derecha.
  • Reunión Externa Derecha (⟖): Incluye todas las tuplas de la relación derecha, rellenando con nulos si no hay coincidencia en la izquierda.
  • Reunión Externa Completa (⟗): Combina la izquierda y la derecha.

Tratamiento de Valores Nulos

Los valores nulos representan información desconocida o no existente. Se deben evitar en operaciones y comparaciones.

Operaciones Aritméticas

Cualquier operación aritmética con nulos devuelve nulo.

Comparaciones

Las comparaciones con nulos resultan en un valor desconocido.

Selección, Proyección, Unión, Intersección, Diferencia

El tratamiento de nulos en estas operaciones puede ser arbitrario.

Reunión

En una reunión natural, las tuplas con nulos en el atributo común no coinciden.

Proyección Generalizada

Los nulos se tratan como en cualquier expresión.

Funciones de Agregación

Se eliminan los nulos antes de aplicar la función.

Reunión Externa

Se comporta como la reunión, pero rellena con nulos las tuplas sin coincidencia.

Modificaciones de la Base de Datos

Borrado

Se eliminan tuplas completas: r := r - E, donde E es una consulta.

Inserción

Se agrega una tupla o el resultado de una consulta: r := r ∪ E.

Actualización

Se modifican valores específicos de una tupla: r := ΠF1, F2, ..., FnP(r)) ∪ (r - σP(r)).