4. Algebra relacional

Documentos relacionados
Unidad 3. Álgebra Relacional y Cálculo Relacional

Operador Restricción

SQL. Amparo López Gaona. México, D.F. Noviembre 2003

Tema 5 Algebra Relacional

El Modelo Relacional: Dinámica y Álgebra Relacional. El Modelo Relacional Tema 8

Algebra Relacional Algebra Relacional

Tema 8 Álgebra Relacional

Introducción al Álgebra Relacional

Algebra Relacional. Bases de Datos 2 - Tecnologo de Informatica. BD2 - Algebra Relacoinal

Bases de datos 1. Teórico: Algebra Relacional

TEMA 6.- LENGUAJES DE CONSULTA FORMALES.

Bases de Datos Distribuidas -Antecedentes

BASES DE DATOS (IG18 Semipresencial) El Modelo Relacional Algebra Relacional y SQL

ESQUEMA DE BASE DE DATOS ATROPELLOS

Conceptos básicos de álgebra relacional

Guía del Curso Curso de Bases de Datos Relacionales

UNIDAD4. 1. Procedimentales 2. No Procedimentales

AR - Marco General. Álgebra Relacional AR - SELECT. AR - SELECT - Propiedades. 19/Agosto/2016

Álgebra relacional. Álgebra Relacional. Franco Guidi Polanco. Semántica de los Operadores del Álgebra Relacional: Unión. Propiedad de cierre

Álgebra Relacional. Unidad 5

Temario. Índices simples Árboles B Hashing

UNIDAD 3 MODELO RELACIONAL

BASES DE DATOS TEMA 3. MODELO RELACIONAL

Sistemas de Bases de Datos I. Modelo Lógico Modelo Relacional

Tema 3. El modelo Relacional

Algebra Relacional. Gestión y Modelación de Datos

CC BASES DE DATOS OTOÑO Clase 3: ER II y Álgebra Relacional. Aidan Hogan

Definición y manipulación de datos (UF2176)

Técnico en Sistemas de Almacenamiento

Uso de SQL. "WHERE id = " + cuentas[i].getid() o bien ResulSet r =s.executequery("select nombre FROM alumno" + "WHERE id = " + cuentas[i].

Una base de datos es una herramienta diseñada para reunir y organizar información. En las bases de datos es posible almacenar información para uso

EL MODELO DE DATOS RELACIONAL

Codd propuso estos tres lenguajes como base teórica de cualquier lenguaje que quisiera cumplir con los requisitos formales del modelo.

Álgebra Relacional. Carlos A. Olarte BDI

Álgebra relacional. Franco Guidi Polanco. Escuela de Ingeniería Industrial Pontificia Universidad Católica de Valparaíso, Chile

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 10. Álgebra Relacional

Bases de Datos 1. Teórico: Structured Query Language

Para manipular relaciones completas, el álgebra relacional proporciona una serie de operadores que podemos clasificar en:

Optimización. Bibliografía: Fundamentos de bases de datos Korth, Silberschatz

OPERACIONES FUNDAMENTALES DEL ÁLGEBRA RELACIONAL. Bases de Datos Ingeniería de Sistemas y Computación Universidad Nacional de Colombia 2007

Tema 2. Bases de Datos Relacionales

Lenguaje de manipulación de datos

SQL, Consultas. Son Importantes las Consultas? Cuál es el Resultado de SELECT? Andrés Moreno S.

Operaciones en el Modelo Relacional. Relacional. Relacional. Índice. Lenguajes de Consulta

TEMA 4. Diseño Lógico de bases de datos relacionales.

1. DML. Las consultas de resumen

SQL: Lenguaje de Interrogación Estructurado

SQL. Carlos A. Olarte BDI

Unidad. Lenguaje SQL. (Structured Query Language)

UNIVERSIDAD RICARDO PALMA FACULTAD DE INGENIERÍA

CC BASES DE DATOS PRIMAVERA Clase 7: SQL (II) Aidan Hogan

Sistemas de Datos Curso: Ernesto Chinkes. SQL Básico Algebra Relacional

Insertar Datos en Tablas

Álgebra Relacional. Universidad de los Andes Demián Gutierrez Mayo

Bases de Datos. Lenguajes relacionales

Temario. Índices simples Árboles B Hashing

A.1. Definiciones de datos en SQL

BASES DE DATOS. TEMA 6. El Álgebra Relacional

Álgebra Relacional. Dra. Amparo López Gaona () Posgrado en Ciencia e Ingeniería de la Compu. Fac. Ciencias, UNAM / 1

Bases de Datos OTROS ASPECTOS MODELO E-R

TEMA 5.- ESTRUCTURA DE DATOS RELACIONAL.

TEMA II. El Modelo Relacional de Datos. El Modelo Relacional de Datos. El Modelo Relacional de Datos. El Modelo Relacional de Datos. Temario (cont.

TEMA: CONSULTAS (ALGEBRA RELACIONAL Y SQL)

BASES DE DATOS I. Algebra Relacional

Técnico Especialista TIC en Bases de Datos y Lenguajes Estructurales

Computación Web (Curso 2015/2016)

Atributos Los atributos son las columnas de un relación y describen características particulares de ella.

Repaso de Conceptos Básicos de Bases de Datos

SQL Los fundamentos del lenguaje

TEMA II.- ÁLGEBRA DE BOOLE

Agrupamiento de registros. Elaboración de claúsulas avanzadas de selección. 31/12/2011. Unidad 9

Modelo Entidad Relación

SELECT SELECT WHERE WHERE GROUP BY

ESPECIALISTA EN BASE DE DATOS

1. Introducción: Qué es un Modelo de Datos? 2. Estática del modelo de datos relacional

John Venn Matemático y filósofo británico creador de los diagramas de Venn

EXAMEN DE ESTRUCTURAS DE LA INFORMACIÓN (Junio 2010)

Álgebra Relacional. Relacional. Manipulación. Índice. Operaciones. Lenguaje

EXAMEN DE ESTRUCTURAS DE LA INFORMACIÓN (Junio de 2008)

1.Introducción al Modelo Relacional.

Vistas en InformiX Sistemas de Bases de Datos II EMT CETP A/S Leonardo Carámbula

SERVICIO NACIONAL DE APRENDIZAJE SENASOFT CAUCA 2013 CATEGORIA: BASES DE DATOS. Diseño y Desarrollo de Bases de Datos

Introducción 1 Recuperación de Datos mediante la Sentencia SQL SELECT

Modelo Relacional I. Nos encontramos en la FASE 2: REGLAS DE TRANSFORMACIÓN del Modelo Entidad Relación (MER) al Modelo Relacional (MR).

UNIVERSIDAD AUTONOMA DEL ESTADO DE MEXICO CU. TEXCOCO. Elaboración de apuntes de: BASE DE DATOS y SQL Avanzado

Ing. Santiago C. Pérez Laura Noussan Lettry Carlos Campos

El Lenguaje SQL TEMA V. Grupo de Bas ses de Datos Avanzadas Univ. Carlo os III de Madrid. V.1 SQL como Lenguaje de Definición de Datos

BASE DE DATOS Octubre Marzo 2017

Consulta y manipulación de datos. El lenguaje SQL

S.Q.L. (Lenguaje de Consulta Estructurada)

Arquitectura de Manejadores de Base de Datos

Transcripción:

Tema 7: Modelo Relacional. Dinámica 4. Algebra relacional Operaciones unarias Operaciones de conjuntos Operaciones de combinación Operación de división Operación de agregación y agrupamiento Tema 7: Dinámica del M. Relacional Se entiende una relación como un conjunto (de tuplas sin repetición) Una BD es una colección de esos conjuntos (más alguna restricción). Las operaciones sobre la BD alteran las relaciones en el tiempo ó producen nuevos estados en la BD. O(BD i ) = BD j * la base de datos cambia, se dinamiza Para obrar esos cambios, es necesario intervenir a través de un lenguaje Los lenguajes relacionales son de especificación. Se distinguen dos tipos: - Algebraicos o procedimentales: los cambios se describen mediante las operaciones que sufre la BD álgebra relacional - Predicativos o no-procedimentales: se describe el estado final de la BD deseado, sin especificar cómo alcanzarlo cálculo relacional 1

Tema 7.4: Algebra relacional Describiendo el camino: el Álgebra Relacional Fue definida por Codd (1971) como base para los modelos relacionales. Inicialmente definió 5 operaciones básicas y 3 derivadas Su estudio sirve para ilustrar las operaciones básicas requeridas en cualquier LMD y como estándar para comparar lenguajes relacionales (mide su potencia operacional) Es un lenguaje formal que se aplica a una o varias relaciones y da como resultado una nueva relación (sin modificar las originales) Es un lenguaje de manipulación Tema 7.4: Álgebra. Operadores Unarios (I) Selección: escogemos las tuplas que cumplan una condición Notación: σpredicado (Relación) Libros escritos por Libros Asi-1 El Fin de la Eternidad Asimov σautor= (Libros) (se escogen filas) Y los libros escritos por o Pérez-Reverte? 2

Tema 7.4: Álgebra. Operadores Unarios (II) Proyección: subconjunto del esquema relación Notación: πatrib1, atrb2.. (Relación) Libros πtítulo,autor (Libros) Título Los Tres Mosqueteros El Capitán Alatriste P-Reverte El Fin de la Eternidad Asimov Asi-1 El Fin de la Eternidad Asimov El Conde de Montecristo (se escogen columnas) Si la proyección fuera por autor cuántas tuplas tendría la nueva relación? Tema 7.4: Álgebra Relacional. Oper. Conjuntos Para poder aplicar los operadores de conjuntos Unión, Intersección y Diferencia, las relaciones deben ser compatibles. Dos relaciones son compatibles si tienen los mismos atributos y estos están definidos en el mismo dominio En general, el esquema de relación de dos relaciones no coincide pero puede aplicarse la operación de proyección para igualar estos esquemas AVENTURAS (Signat, Título,, Tipo) (AVENTURAS) Signat, Título, NOVELAS (Signat, Título, ) Compatibles 3

Tema 7.4: Álgebra Relacional. Oper. Conjuntos Unión: todas las tuplas de ambas relaciones (compatibles), eliminándose todas las tuplas repetidas Aventuras Novelas Ner-1 Veinte poemas de amor Neruda Asi-1 El Fin de la Eternidad Asimov Aventuras Novelas Asi-1 El Fin de la Eternidad Asimov Ner-1 Veinte poemas de amor Neruda Libros de aventuras o novelas Tema 7.4: Álgebra Relacional. Oper. Conjuntos Intersección: todas las tuplas que estén en ambas (compatibles) Aventuras Novelas Ner-1 Veinte poemas de amor Neruda Aventuras Novelas Novelas de aventuras 4

Tema 7.4: Álgebra Relacional. Oper. Conjuntos Diferencia: tuplas que aparecen en la primera y no en la otra (compatibles) Aventuras Novelas Ner-1 Veinte poemas de amor Neruda Aventuras - Novelas Libros de aventuras que no se consideran novelas Tema 7.4: Álgebra Relacional. Oper. Combinación Producto cartesiano: tuplas de ambas en todas las combinaciones Comidas Especialidad Gazpacho Cocido Pote Vinos Denominación Rioja Rueda Región Andalucía Castilla Galicia Comidas x Vinos Especialidad Región Gazpacho Andalucía Gazpacho Andalucía Cocido Castilla Rioja Cocido Castilla Rueda Pote Galicia Rioja Pote Galicia Rueda Denominación Rioja Rueda Carta de comidas con los distintos vinos que se ofrecen 5

Tema 7.4: Álgebra Relacional. Oper. Combinación Combinación: tuplas del producto que cumplen una condición. La condición lleva operadores de comparación (=, >, <..) Qué películas pueden ver los clientes del cine Clientes Nombre Edad Fulano 29 Mengano 18 Zutano 9 Películas Título Calificación Matrix 18 Sólo tu 0 Clientes θedad Calificación Películas Nombre Edad Título Calificación Fulano 29 Fulano 29 Mengano 18 Mengano 18 Zutano 9 Matrix 18 Sólo tu 0 Matrix 18 Sólo tu 0 Sólo tu 0 Tema 7.4: Álgebra Relacional. Oper. Combinación Combinación Natural: Caso particular del operador combinación donde la comparación es de igualdad Nombre de los empleados que son dueños de algún coche Empleados Nombre DNI Fulano 569074 Mengano 434848 Zutano 383090 Coches Marca Dueño Ford Escort 383090 Seat Ibiza 569074 Empleados *DNI Coches Nombre DNI Marca Fulano 569074 Seat Ibiza Zutano 383090 Ford Escort observar que se elimina la columna repetida (Empleados *DNI Coches) Nombre Nombre Fulano Zutano 6

Tema 7.4: Álgebra Relacional Operadores Primarios y Operadores Derivados Algunos operadores del álgebra relacional pueden ser sustituidos por una secuencia de otras operaciones algebraicas. Aquellos se dirá que son operadores derivados. Por otro lado, operadores primitivos son los que no pueden ser obtenidos por ninguna secuencia de otros operadores primitivos Primitivos Selección Proyección Producto Cartesiano Unión Derivados Intersección División Combinación Combinación Natural A - (A-B) π... σ (AxB) σ (AxB) π... σ (AxB) Tema 7.4: Álgebra Relacional. División División: tuplas de la primera que se corresponden con la combinación de todas las tuplas de la segunda. Solo podemos dividir cuando los atributos del divisor son un subconjunto de los del dividendo. Es útil para un tipo especial de consultas Libros escritos por todos los autores Libros es Libros es Dum-2 El Conde de Montecristo 7

Tema 7.4: Álgebra Relacional. División VINO Tipo Cosecha Calidad Albariño 1977 Bueno Ulla 1978 Malo Condado 1977 Bueno Condado 1978 Bueno Amandi 1978 Bueno CALIDAD_BUENA Cosecha Calidad 1977 Bueno 1978 Bueno Vinos con calidad buena en todas las cosechas: AUTOR : CALIDAD_BUENA Tema 7.4: Álgebra Relacional. Agrupación Agrupación: formación de grupos según un conjunto de atributos al cual se le aplica una función de agregación Personas Nombre Edad Fulano 29 Mengano 49 John Doe 73 Smith 14 Zutano 3 Pelancejo 25 Nacionalidad Inglés Inglés Nacionalidad Group by Count (Nacionalidad) (Personas) Nacionalidad Count 4 Inglés 2 Número de personas por nacionalidad Funciones de agrupación: Count(), Sum(), Avg(), Min(), Max() 8