Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Gestión de Datos 2019 Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Apuntes del Mg. Ing. Gustavo E. Juárez UNIDAD 6: Álgebra Relacional Álgebra Relacional. Operadores de Selección, Proyección, Producto, Unión y Diferencia, Intersección, Cociente y Join. Apuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Apuntes del Mg. Ing. Gustavo E. Juárez PARTE I FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional Definición: “El álgebra relacional es un conjunto de operaciones que describen paso a paso como calcular una respuesta sobre las relaciones componiendo un lenguaje formal basado en operadores y que utiliza para ello relaciones”. Tanto los operandos como los resultados son relaciones, por lo que la salida de una operación puede ser la entrada de otra operación. Esto permite anidar expresiones del álgebra, del mismo modo que se pueden anidar las expresiones aritméticas. Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional Especificaciones El algebra relacional es un algebra en la cual: • Sus operandos son relaciones (instancias) o variables que representan relaciones. • Sus operadores están diseñados para hacer la tareas mas comunes que se necesitan para manipular relaciones en una base de datos. El resultado es que el algebra relacional se puede utilizar como un lenguaje de consulta. En la practica el algebra relacional debe ser extendida para abarcar la mayor parte de las tareas reales que se hacen con los datos. Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Operadores del Algebra Relacional EL algebra relacional es similar al algebra que hasta hoy han aprendido, solo que en esta los valores utilizados representan datos, y no solo números. Es un algebra cerrada, ya que el resultado de una o mas operaciones relacionales es siempre una relación. Las tuplas de una relación se pueden considerar elementos de un conjunto y por lo tanto, las operaciones que se pueden realizar en conjuntos también se pueden realizar en relaciones. Algebra Relacional Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional Tipificación El Algebra Relacional esta compuesta por dos tipos de operaciones, cuya característica distintiva es el numero de relaciones que necesita. Así vemos que se tipifican en: 1. UNARIAS 2. BINARIAS Comenzaremos estudiando las Operaciones Unarias, las cuales son aquellas que necesitan de solo una relación para realizar la operación. En cuanto a las Binarias veremos que existen restricciones referidas al GRADO (Atributos) o a la CARDINALIDAD (Tuplas). Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional Características: Así entonces se puede decir que una Relación: “ es una Tabla bidimensional en donde cada renglón o tupla, tiene datos que pertenecen a alguna cosa o a una parte de esta, y donde cada columna o atributo de esta tabla describen a la ocurrencia”. Atributos (Columnas) -> GRADO Tuplas (Hileras) -> CARDINALIDAD Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional Para comenzar el estudio de los operadores del Algebra Relacional, se presentan las tablas de estudio tomadas como ejemplos, con su Estructura: Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional La siguiente Figura presenta las tablas de estudio tomadas como ejemplos, con sus respectivos DOMINIOS DE VALORES: Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional La siguiente Figura presenta las tablas de estudio tomadas como ejemplos, con sus respectivos VALORES: Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional - Operadores UNARIOS Operador SELECCIÓN Definición: “El operador Selección simbolizado mediante σ, extrae tuplas a partir de una relación que satisfagan una restricción dada”. Cuando este operador es implementado en SQL. se encuentra asociado a las palabras reservadas FROM y WHERE, las cuales brindan la condición que se debe cumplir. Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Operador SELECCIÓN Si se buscara en la relación ESTUDIANTE a aquellos que estudiaran Administración, deberíamos escribir la siguiente línea de comando: SELECT Especialidad FROM ESTUDIANTE WHERE Especialidad=’Administración’, entonces obtendríamos la siguiente tabla derivada: Algebra Relacional - Operadores UNARIOS Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional - Operadores UNARIOS Operador PROYECCION Definición: “El operador Proyección simbolizado mediante π, extrae atributos (columnas) específicos de una relación”. El resultado será una nueva relación con las columnas (atributos) seleccionados, escogiendo los atributos las columnas de la relación que cumplan con la condición establecida como parámetro. Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional - Operadores UNARIOS Operador PROYECCION Sobre la tabla ESTUDIANTE realizamos la siguiente operación de PROYECCION: π (Nombre, Especialidad) ESTUDIANTE Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional - Operadores BINARIOS Operador UNION Definición: “La UNION de dos relaciones está formada por la adición de tuplas de una relación con los de una segunda relación que produce una tercera”. Comentario: El orden en el que aparecen las tuplas en la tercera relación no es importante, pero se deben eliminar los que estén duplicados. Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E.Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional - Operadores BINARIOS Operador UNION Representación: La UNION se denota por A + B Para que esta relación tenga sentido, las relaciones deben ser compatibles en la UNION, esto es: 1. Cada relación debe tener el mismo número de atributos. 2. Los atributos en las columnas correspondientes deben provenir del mismo dominio (GRADO). Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional - Operadores BINARIOS Operador UNION La UNION entre las tablas JUNIOR y ESTUDIANTE-HONOR da la siguiente tabla derivada: Como se observa en la tupla 1 y 5, existe una redundancia que se debe corregir. El método indica la eliminación de la tupla 5, dándonos la siguiente tabla derivada normalizada (Definitiva). Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional - Operadores BINARIOS Operador DIFERENCIA Definición: “La diferencia de dos relaciones, simbolizada como -, es una tercera relación que contiene tuplas que están presentes en la primera relación, pero no en la segunda”. Restricciones: Las relaciones deben ser compatibles en la UNION. Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional - Operadores BINARIOS Operador DIFERENCIA La diferencia entre JUNIOR y ESTUDIANTE-HONOR, se ve reflejada en la siguiente relación. Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional - Operadores BINARIOS Operador INTERSECCION Definición: “La INTERSECCION de dos relaciones , simbolizada mediante ∩ , es una tercera relación que contiene las tuplas que aparecen tanto en la primera como en la segunda relación”. Las relaciones deben ser compatibles en la UNION. Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional - Operadores BINARIOS Operador INTERSECCION La INTERSECCION de JUNIOR y ESTUDIANTE-HONOR en una tupla independiente, pero común a ambas relaciones. Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional - Operadores BINARIOS Operador PRODUCTO Definición: “El producto de dos relaciones, también conocido como el producto cartesiano, es la concatenación de cada tupla de una relación con cada tupla de la segunda relación”. El producto de la relación A (con m tuplas) y la relación B (con n tuplas), dará como resultado una tabla de m veces n tuplas. Así es que A x B es igual a A veces B. Grado(A) + Grado (B) y Cardinalidad(A)* Cardinalidad(B) Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional - Operadores BINARIOS Operador PRODUCTO El PRODUCTO de ESTUDIANTE X INSCRIPCION , es una tercera relación que contiene el producto cartesiano de las tuplas de la primera relación por las de la segunda relación, obteniendo una relación del tipo : Grado(A) + Grado (B) y Cardinalidad(A)* Cardinalidad(B) Algebra Relacional - Operadores BINARIOS Operador PRODUCTO Por lo tanto la tabla resultante deberá contener: Grado(A) + Grado (B) y Cardinalidad(A)* Cardinalidad(B) 4 + 3 y 4 * 3 Tuplas Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional – Operador Compuesto Operador JOIN ⋈ El operador de Enlace o JOIN es el operador mas usado para combinar tablas. La combinación de tablas es importante debido a que la mayoría de las bases de datos tienen la información distribuida en muchas tablas. El operador Enlace o JOIN difiere del operador Producto porque requiere de una condición de coincidencia sobre las tuplas de dos tablas. La mayoría de las tablas se combinan de esa forma. El operador Enlace o JOIN construye una nueva tabla al combinar las tuplas de dos tablas que coinciden con una condición de enlace. Comúnmente la condición de enlace especifica que dos tuplas tengan un valor idéntico en una o mas columnas. Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional – Operador Compuesto Operador JOIN ⋈ El operador JOIN es una combinación del PRODUCTO, SELECCIÓN y PROYECCION (Posible). La Asociación de dos relaciones A y B, opera de la siguiente manera: 1. Debo realizar el PRODUCTO de A x B. Normalización de la relación resultante. 2. SELECCIÓN en función del criterio. Normalización de la relación resultante. 3. Elimina atributos de acuerdo a criterios específicos, mediante la operación de PROYECCION (Posible).. Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional – Operador Compuesto Operador JOIN ⋈ Tomaremos como punto de partida las Tablas ESTUDIANTE e INCRIPCION para aplicar el Operador JOIN Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional – Operador Compuesto Operador JOIN ⋈ Seleccionamos las tuplas en donde #EID sean iguales a las de #NumerodeEstudiante (solo encontraremos tres). SELECT ESTUDIANTE x INSCRIPCION WHERE (#EID = #NumerodeEstudiante) Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Operador JOIN ⋈ Y obtendremos la siguiente tabla derivada: EQUIJOIN Observe que tenemos dos atributos idénticos (#EID y #NumerodeEstudiante), por lo que uno de ellos es redundante del otro. Eliminamos uno (#NumerodeEstudiante) mediante la PROYECCION. π (EID, Nombre, Especialidad, Grado, NombredeClase, NumerodePosicion) ED-DERIVADA JOIN NATURAL Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional - Operador Compuesto Operador JOIN ⋈ Si desarrollamos la siguiente operación ESTUDIANTE LEFT OUTER JOIN (#EID = NumerodeEstudiante) INSCRIPCION obtendremos la tabla derivada denominada Left Outer Join: LEFT OUTER IJOIN Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional - Operador Compuesto Tipificación del Operador JOIN ⋈ Left Join Left Join con Intersección Nula Right Join Right Join con Intersección Nula Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica NacionalAlgebra Relacional – Operador Compuesto Tipificación del Operador JOIN Inner Join Outer Join Outer Join con Intersección Nula Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional Ejercicios: Operador de Selección Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional Ejercicios: Operador de Proyección Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional Ejercicios: Operador de Selección y Proyección Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Algebra Relacional Ejercicios: Operador de Unión Ejercicios: Operador de Unión Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Referencias • Paper “A relational model for a large shared data banks”, E. F. Codd. • Libro “Fundamentos de Bases de Datos”, Rovarini P., De La Vega H. • Libro “Sistemas de Bases de Datos. Conceptos Fundamentales”, R. Elmasrhi – S. Navathe. 2ª Edic. Edit . Addison – Wesley. • Faculta de Ingeniería. Universidad de Talca (CHI). http://ing.utalca.cl/~jperez/bd/documentos/al.pdf Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional Apuntes del Mg. Ing. Gustavo E. JuárezApuntes del Mg. Ing. Gustavo E. Juárez FRT -UTN Cátedra: Gestión de Datos Departamento Sistemas Facultad Regional Tucumán Universidad Tecnológica Nacional
Compartir