El objetivo de la enseñanza del álgebra relacional es facilitar el aprendizaje de la
escritura de sentencias SQL, dado por la manipulación de datos de las relaciones con operaciones. El resultado de aplicar una operación del álgebra relacional es otra relación. Esto permite la combinación de operaciones y su anidamiento, debido a que la entrada de una operación puede ser el resultado de una operación anterior. Clasificación de operaciones: ● Operaciones de conjuntos: Unión, diferencia intersección y producto cartesiano. ● Operaciones relacionales: Selección, proyección, reunión, división, agrupación y funciones. Operaciones de conjuntos Son las operaciones binarias más simples, o sea que en la expresión del álgebra relacional se incluyen dos relaciones de entrada. Unión Esta operación recibe dos relaciones de entrada, se simboliza con ∪ y exige que dichas relaciones sean compatibles respecto a la unión. Esto significa que con el mismo número de atributos y los atributos correspondientes definidos sobre el mismo dominio. Ejemplo: Hacer la unión de las relaciones y docentes implica escribir la siguiente expresión del álgebra relacional y obtener el siguiente resultado correspondiente a los datos de todos los estudiantes y docentes de la universidad. Estudiantes ∪ Docentes Diferencia Esta operación también exige que las dos relaciones de entrada sean compatibles respecto a la unión. Ejemplo: Obtener las filas con los datos de los Docentes que no se desempeñan como No docentes implica hacer la diferencia entre las relaciones “Docentes” y “No docentes”. Dicha operación se expresa en el álgebra relacional como a continuación Docentes — No Docentes Intersección Esta operación se simboliza con ∩ y también exige que las dos relaciones de entrada son compatibles respecto a la unión. Ejemplos: Hacer la intersección entre las relaciones de docentes y no decentes implica escribir la siguiente expresión del álgebra relacional y obtener el siguiente resultado. Docentes ∩ No Docentes Producto cartesiano Esta operación se simboliza con x, trabaja sobre dos relaciones y exige que ambas relaciones de entrada no sean compatibles respecto a la unión; por el contrario, deben ser compatibles respecto al producto, exigiendo que las cabeceras no posean atributos con igual nombre, si hubiera algún atributo con igual nombre, habría que renombrarlo para luego escribir la operación. Ejemplo: Hacer el producto cartesiano entre las relaciones “Materias” y “Provincias” implica escribir la siguiente expresión del álgebra relacional: Materias x Provincias Operaciones relacionales Las operaciones relacionales brindan más potencial, incluso cuando se combinan con las operaciones de conjuntos y entre ellas mismas. No todas las operaciones relacionales son binarias y no todas son primitivas. Selección Esta operación permite seleccionar un conjunto de tuplas con una única relación de entrada, que cumplan determinadas condiciones que se incluyen en la expresión.como la entrada es una sola relación se dice que la selección es una operación unaria. Se simboliza con σ y solo es necesario expresar las condiciones si se considera el dominio de los datos involucrados. σ condición (A) Ejemplo: Si se desean obtener todos los estudiantes de la universidad que poseen legajo superior a 14,000 la expresion sera: σ legajo>14000 (Estudiantes) Proyección Así como en el resultado de la selección se obtienen filas que cumplen determinadas condiciones, en este caso, lo que podemos elegir son columnas, que van separados por coma. Es decir que la operación, que se simboliza 𝜋 y es unaria, permite elegir cuales son las columnas de la relación entrante que formarán parte de la relación “Resultado”. 𝜋 Apellidos,Nombres (A) Ejemplo: Si se desean obtener Apellido y Nombres de todos los no docentes de la universidad, la expresion sera: 𝜋 Apellidos,Nombres (No Docentes) Reunión Esta operación binaria brinda la posibilidad de ampliar los datos de una relación con datos de otra relación, a través de un atributo en común que deben poseer las relaciones, que obtendrá una mayor información. Generalmente el atributo común entre ambas es clave primaria en una relación y foránea en la otra, es decir, que se definirán en el mismo dominio. El símbolo de reunión es este ⋈. Ejemplo: Si se desea obtener los datos de las localidades que incluyan la descripción de la provincia a la que pertenece cada una, la expresión es: Localidades ⋈ Id Provincia=Id Provincia Provincias División Esta es una operación binaria que permite obtener los datos de los estudiantes que aprobaron todas las materias o empleados que trabajaron en todas las sucursales de una empresa. La condición es que la cabecera de la relación del divisor está incluida en la cabecera del dividendo. El símbolo es ÷ y la expresión se escribe así: A ÷ B Renombrar La operación renombrar no está dentro de las mencionadas ya que es una operación auxiliar, pero necesaria en determinadas situaciones, como en las que se aplican expresiones complejas o se necesita cumplir con las exigencias de otra operación del álgebra relacional. Esta operación se simboliza con p (rho) y permite renombrar una relación, unos atributos o los dos a la vez. Funciones Estos son un conjunto de funciones que proporcionan la posibilidad de aplicar cálculos con valores de las relaciones. ● SUM ● AVG ● MIN ● MAX ● COUNT Estas funciones se escribirán junto al símbolo (F gótica) Agrupación A las funciones mencionadas, si se les aplica lo que se denomina agrupación, se les proveerá de más potencial. La expresión indica que deben de agruparse las tuplas por legajo y por cada grupo de filas aplicar la función AVG. Relaciones temporales Suelen utilizarse las relaciones temporales para que se mantengan o recuerden los resultados intermedios de las operaciones del álgebra relacional. Esto significa que también se hace en la práctica SQL, para evitar, de esta manera, las consultas de muy difícil lectura y seguimiento. Cálculo relacional En el álgebra relacional, las expresiones son operaciones anidadas que indican lo que se desea obtener y cómo conseguirlo, incluso, especificando un determinado orden para obtener lo que se necesita sin perder datos. Por todo esto, se dice que el álgebra relacional es un lenguaje procedimental para expresar consultas.