John Freddy Duitama M. Universidad de Antioquia. El Cálculo Relacional. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A. John Freddy Duitama.

Slides:



Advertisements
Presentaciones similares
EL MODELO RELACIONAL Edgar Codd, 1970: Artículo → “A Relational Model of Data for Large Shared Data Banks”. Basado en teoría de conjuntos. Operaciones.
Advertisements

IBD Clase 16.
IBD Clase 14.
Seminario: Interpretaciones y Modelos Conjuntistas Profesores Dr Alberto Moretti Dr Eduardo Alejandro Barrio 2do cuatrimestre de 2005 Facultad de Filosofía.
Seminario: Todo Prof. Eduardo Alejandro Barrio 1er cuatrimestre de 2006 Facultad de Filosofía y Letras, UBA.
Seminario: Paradojas, circularidad y universalidad expresiva Prof. Eduardo Alejandro Barrio 1er cuatrimestre de 2007 Facultad de Filosofía y Letras, UBA.
Seminario: Interpretaciones y Modelos Conjuntistas
El modelo de datos relacional
Lenguajes Relacionales
Teórico: Modelo Relacional
ALGEBRA RELACIONAL Y CALCULO RELACIONAL CON REFERENCIA A BASE DE DATOS
INTELIGENCIA ARTIFICIAL
Estadística Computacional I
Estadística Computacional I
Teórico: Algebra Relacional
MODELOS LÓGICOS : Modelo Relacional
José Alfredo Cervantes Guzmán UMSNH Coautor: Jesús Rivera
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERIA DIVISIÓN DE INGENIERÍA ELÉCTRICA COMPUTACIÓN PARA INGENIEROS NOTA IMPORTANTE: Para complementar.
MODELO RELACIONAL.
Bienvenidos... ACI Bases de Datos Marzo 2006 Universidad de las Américas.
Integración de Información usando Vistas Lógicas Jeffrey D. Ullman Presentación: Juan Quinteros.
PROGRAMACIÓN LÓGICA.
Diseño de Bases de Datos Distribuidas (1era Parte)
ALGORITMICA II - Tipos Abstractos de Datos (TAD)

Lenguajes Formales de Consulta
John Freddy Duitama M. Universidad de Antioquia. El Cálculo Relacional. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A. John Freddy Duitama.
EL MODELO RELACIONAL Edgar Codd, 1970: Artículo → “A Relational Model of Data for Large Shared Data Banks”. Basado en teoría de conjuntos. Operaciones.
SQL el Structured Query Language no es mas que un lenguaje estándar de comunicación con bases de datos.
1 John Freddy Duitama U.de.A. Facultad de Ingeniería Optimización Algebraica. Profesor: John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A. Profesor:
Facultad de Tecnología Informática
Esquema asociado a la presencia del negador. Se niega que algo sea el caso: No es el caso que B.
BASE DE DATOS BY: Julián Villar Vázquez.
John Freddy Duitama Muñoz. Facultad de Ingeniería. U. de. A.
John Freddy Duitama M.U.de.A. Facultad de Ingeniería. Creación del esquema de Una Base de Datos. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.
LOGICA DE ENUNCIADO LOGICA DE PREDICADO
John Freddy Duitama Muñoz Juan Camilo Alzate Restrepo Facultad de Ingeniería U.de.A. John Freddy Duitama Muñoz Juan Camilo Alzate Restrepo Facultad de.
Diseño de Bases de Datos Relacionales
IBD CLASE 15. SQL Lenguaje de Consultas Estruturado (SQL) ◦Lenguaje de trabajo estándard para modelo relacional ◦Componentes ◦DDL: Data Definition Language.
Algebra Relacional Ing. Fabián Ruano.
Algebra Relacional.
1 Fundamentos de Bases de Datos. U.de.A. Facultad de Ingeniería Características Generales de un Sistema de Bases de Datos. Profesor: John Freddy Duitama.
Diseño de Bases de Datos
COMPUTABILIDAD Y COMPLEJIDAD 1. Conceptos básicos (revisión). 2. Gramáticas independientes de contexto. 3. Propiedades de los lenguajes independientes.
MATEMATICA I Lógica Matemticas Prof Rubén Millán
Base de Datos I. Es un lenguaje con el que los usuarios solicitan información de la BD. Estos lenguajes suelen ser de nivel superior que el de los lenguajes.
Vista Externa de Una Base de Datos John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.
DDL Unidad 2. Lenguaje estándar SQL El SQL es un lenguaje estándar de definición y manipulación (y consulta) de bases de datos relacionales. El SQL estándar.
Expresiones Lógicas Prof. Flor Narciso Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes.
John Freddy Duitama M.U.de.A. Facultad de Ingeniería. Creación del esquema de Una Base de Datos. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.
Características Generales de un Sistema de Bases de Datos.
UCLA – DAC M. Sc. Jorge E. Hernández H.
UNIDAD III: MODELAJE DE BASE DE DATOS RELACIONAL..
Términos algoritmo diseñar algoritmo implementar algoritmo
Valor Absoluto.
Vista Externa de Una Base de Datos John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.
Para pasar a tablas todos los datos sin dejar nada y que las tablas tengan sentido por si solas se tiene que seguir unos pasos: 1.Toda entidad se transforma.
UNIVERSIDAD TECNICA PERTICULAR DE LOJA
Presente un cuestionario con los aspectos mas importantes sobre los
Abril CV11 MATEMÁTICAS DISCRETAS MARTES 20:30 – 22:00 MIERCOLES 17:00 – 19:00 JUEVES 16:30 – 17:30 M. en C. José del Carmen.
JOIN EN MYSQL Bueno en esta presentación mostrare cosas acerca de los usos de la sentencia JOIN en mysql , mediante esta presentación planeo mostrar los.
SISTEMAS DE BASES DE DATOS MASIVOS (U. N.) / GESTIÓN Y EL PROCESAMIENTO DE GRANDES VOLÚMENES DE DATOS (U. de A.) Francisco Moreno & Freddy Duitama 2015-II.
Maestría en ciencias de la computación
1 John Freddy Duitama M. U.de.A. Facultad de Ingeniería Structured Query Language S.Q.L. John Freddy Duitama Muñoz Facultad de Ingeniería U.de.A. S.Q.L.
Características Generales de un Sistema de Bases de Datos. Profesor: John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A. Profesor: John Freddy Duitama.
LA COMPLEJIDAD DE LAS OPERACIONES DEL ÁLGEBRA RELACIONAL
Base de Datos I – Ing. Mary Carlota Bernal J.
Creado por Edgar Codd, 1970: Artículo “A Relational Model of Data for Large Shared Data Banks”. EL MODELO RELACIONAL.
Algebra relacional Integrantes: Víctor Sergio López Sainz. Francisco Javier centeno. Verdín Carlos Omar.
BASE DE DATOS I ( ) Planificación, Contenidos, Evaluaciones, Bibliografía.
Transcripción de la presentación:

John Freddy Duitama M. Universidad de Antioquia. El Cálculo Relacional. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.

John Freddy Duitama M. Universidad de Antioquia. Lenguaje formal para manipular y definir relaciones. Lenguaje no procedimental. Las fórmulas son expresiones que denotan relaciones. Existen cálculo relacional de tuplas y el cálculo relacional de dominios. Cálculo Relacional de tuplas. Una forma de la lógica en donde las variables son tuplas. {t / P(t)} el conjunto de tuplas tales que el predicado P es cierto. Cálculo Relacional.

John Freddy Duitama M. Universidad de Antioquia. Una consulta del cálculo relacional de tuplas tiene la forma { t / P(t) } t  R denota que la tupla t está en la relación R. t [A] denota el valor del atributo A en la tupla t. {t / P(t)} el conjunto de tuplas tales que el predicado P es cierto. Ejemplo: { t /  t  R ( Q ( t ) ) } Existe una tupla t en R tal que el predicado Q(t) es verdadero. {s/ s  Empleados  s[cargo]=“Auxiliar” } Definiciones Básicas

John Freddy Duitama M. Universidad de Antioquia. Átomos para las fórmulas bien formadas. (f.b.f) 1.t  R, donde t una variable tupla y R una relación. 2.2.s [A]   t [B]; s, t = variables tupla. A,B = atributos de las relaciones sobre las que defino las variables s, t.   {, =, !=, = } y los dominios de A y B pueden compararse con estos operadores. 3. s[A]  c. Con c constante en el dominio del atributo A.

John Freddy Duitama M. Universidad de Antioquia. Reglas de construcción para las fórmulas bien formadas. Un átomo es una f.b.f. Si P1 es una f.b.f. entonces  P1 y (P1) son f.b.f. Si P1 y P2 son f.b.f entonces: P1  P2, P1  P2, P1  P2 son f.b.f. Si P1(a) es una f.b.f. que contiene a una variable libre s entonces:  s ( P1(s) ) y  s (P1(s)) son f.b.f. Expresiones equivalentes. P1  P2  (  P1  P2)  s (P1(s))   s (  P1(s) )  P1  P2 P1 ==> P2  ( P  Q )  P  Q  ( P  Q )  P   Q

John Freddy Duitama M. Universidad de Antioquia. El cálculo de tuplas como lenguaje de consulta. Sean las relaciones: Cliente(nombre-cliente,dirección,ciudad). Sucursal(nombre-sucursal,activo,ciudad) Préstamo(sucursal, préstamo,nombre-cliente,valor). Depósito(sucursal,cuenta,nombre-cliente,saldo) Cada atributo asociado a un dominio. 1. Encontrar el nombre de la sucursal, el préstamo, el nombre del cliente y el valor para los préstamos mayores en valor a { t / t  préstamo  t [valor] > 1200 } {t[sucursal, préstamo, nombre-cliente, valor] / t  préstamo  t [valor] > 1200 }

John Freddy Duitama M. Universidad de Antioquia. El cálculo de tuplas como lenguaje de consulta. Sean las relaciones: Cliente(nombre-cliente,dirección,ciudad). Sucursal(nombre-sucursal,activo,ciudad) Préstamo(sucursal, préstamo,nombre-cliente,valor). Depósito(sucursal,cuenta,nombre-cliente,saldo) Cada atributo asociado a un dominio. 2. Encuentre el nombre de los clientes con préstamos mayores a { t /  s  préstamo (  s[valor] > 1200  s[nombre-cliente] = t[nombre-cliente] ) } Notación alternativa. { t[nombre-cliente] /  s  préstamo (  s[valor] > 1200  s[nombre-cliente] = t[nombre-cliente] ) }

John Freddy Duitama M. Universidad de Antioquia. El cálculo de tuplas como lenguaje de consulta. Sean las relaciones: Cliente(nombre-cliente,dirección,ciudad). Sucursal(nombre-sucursal,activo,ciudad) Préstamo(sucursal, préstamo,nombre-cliente,valor). Depósito(sucursal,cuenta,nombre-cliente,saldo) 3. Hallar el nombre de los clientes que tienen préstamos, depósitos o ambas cosas en la sucursal de la América. {t /  s  préstamo (  s[nombre-cliente]= t[nombre-cliente]  s[sucursal] = “La América” )   u  depósito ( t[nombre-cliente] = u[nombre-cliente]  u[sucursal] = “La América” ) }

John Freddy Duitama M. Universidad de Antioquia. El cálculo de tuplas como lenguaje de consulta. Sean las relaciones: Cliente(nombre-cliente,dirección,ciudad). Sucursal(nombre-sucursal,activo,ciudad) Préstamo(sucursal, préstamo,nombre-cliente,valor). Depósito(sucursal,cuenta,nombre-cliente,saldo) 4. Encontrar el nombre de los clientes que tienen tanto un depósito como un préstamo en la sucursal de la América. {t /  s  préstamo ( s[nombre-cliente] = t[nombre-cliente]  s[sucursal] = “La América” )   u  depósito ( t[nombre-cliente] = u[nombre-cliente]  u[sucursal] = La América ) }

John Freddy Duitama M. Universidad de Antioquia. El cálculo de tuplas como lenguaje de consulta. Sean las relaciones: Cliente(nombre-cliente,dirección,ciudad). Sucursal(nombre-sucursal,activo,ciudad) Préstamo(sucursal, préstamo,nombre-cliente,valor). Depósito(sucursal,cuenta,nombre-cliente,saldo) 5. Encontrar el nombre de los clientes con préstamos en la sucursal de Belén. Informar ciudad de residencia del cliente. {t /  s  préstamo ( s[nombre-cliente]=t[nombre-cliente]  s[sucursal] = “Belen”  u  cliente ( u[nombre-cliente] = s[nombre-cliente]  u[ciudad] = t[ciudad] ) ) } Esquema nueva relación: t [nombre-cliente, ciudad]

John Freddy Duitama M. Universidad de Antioquia. El cálculo de tuplas como lenguaje de consulta. Sean las relaciones: Cliente(nombre-cliente,dirección,ciudad). Sucursal(nombre-sucursal,activo,ciudad) Préstamo(sucursal, préstamo,nombre-cliente,valor). Depósito(sucursal,cuenta,nombre-cliente,saldo) 6. Encontrar el nombre de todos los clientes que tiene depósitos en Belén pero que no tienen préstamos en esta sucursal. {t /  s  depósito ( s[nombre-cliente]=t[nombre-cliente]  s[sucursal] = “Belén” )   u  prestamo ( u[nombre-cliente]=t[nombre-cliente]  u[sucursal] = “Belén” ) }

John Freddy Duitama M. Universidad de Antioquia. El cálculo de tuplas como lenguaje de consulta. Sean las relaciones: Cliente(nombre-cliente,dirección,ciudad). Sucursal(nombre-sucursal,activo,ciudad) Préstamo(sucursal, préstamo,nombre-cliente,valor). Depósito(sucursal,cuenta,nombre-cliente,saldo) 7. Encuentre el nombre de todos los clientes que tienen préstamos en una sucursal ubicada en la ciudad donde residen. {t /  s  préstamo ( s[nombre-cliente] = t[nombre-cliente]   u  cliente ( s[nombre-cliente] = u[nombre-cliente]   z  sucursal  z[ciudad] = u[ciudad]  z[nombre-sucursal] = s[sucursal] ) ) ) }

John Freddy Duitama M. Universidad de Antioquia. El cálculo de tuplas como lenguaje de consulta. Sean las relaciones: Préstamo(sucursal, préstamo,nombre-cliente,valor). Cliente(nombre-cliente,dirección,ciudad). Depósito(sucursal,cuenta,nombre-cliente,saldo) Sucursal(nombre-sucursal,activo,ciudad) 8. Encontrar los clientes que tienen depositos en todas las sucursales ubicadas en Medellín. { t /  u  sucursal ( u[ciudad] = “Medellín”   s  depósito ( s[nombre-cliente] = t[nombre-cliente]  u[nombre-sucursal] = s[nombre-sucursal] ) ) }

John Freddy Duitama M. Universidad de Antioquia. El cálculo de tuplas como lenguaje de consulta. Sean las relaciones: Préstamo(sucursal, préstamo,nombre-cliente,valor). Cliente(nombre-cliente,dirección,ciudad). Depósito(sucursal,cuenta,nombre-cliente,saldo) Sucursal(nombre-sucursal,activo,ciudad) 8-a. Encontrar los clientes que tienen depositos en todas las sucursales ubicadas en Medellín. { t /  u  sucursal ( u[ciudad] = Medellín   s  depósito ( s[nombre-cliente] = t[nombre-cliente]  u[nombre-sucursal] = s[nombre-sucursal] ) }

John Freddy Duitama M. Universidad de Antioquia. Dominio de una fórmula relacional de tuplas P. dom(P)= es el conjunto de todos los valores a los que P hace referencia Los valores mencionados en P. Los valores que son explícitos en las relaciones que aparecen en P dom( t  préstamo  t[saldo] > 1200 ) = El conjunto que contenga a 1200 El conjunto de todos los valores que aparecen en préstamo. Una expresión es segura si todos los valores que aparecen en el resultado son valores del dom(P). Que pasa con (dom(t  préstamo  t[saldo] > 1200 ) ? En este cálculo solo usaremos expresiones seguras.

John Freddy Duitama M. Universidad de Antioquia. Bibiografía. Jeffrey D. Ullman. Principles of Database and Knowledge-Base System. Volúmenes I. Computer Science Press Capítulos 2 y 3. Jeffrey D. Ullman. and Jennifer Widom. A First Course in Database Systems. Prentice Hall Capítulos. 3 y 4. Abraham Silberschatz, et. Al. Fundamentos de Bases de Datos. Quinta edición