Descargar la presentación
La descarga está en progreso. Por favor, espere
1
Estadística Computacional I
Maestría en Estadística Aplicada
2
Operación diferencia de conjuntos, ejemplo
B A B Relaciones r, s: 1 2 2 3 s r r – s: A B 1 ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
3
Operación diferencia de conjuntos, definición
Notación r – s Definida como: r – s = {t | t r and t s} La diferencia de conjuntos debe ser realizada entre relaciones compatibles. r y s deben tener la misma ariedad El dominio de los atributos de r y s deben ser compatibles. ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
4
Producto cartesiano, ejemplo
B C D E Relaciones r, s: 1 2 10 20 a b r s r x s: A B C D E 1 2 10 20 a b ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
5
Producto cartesiano, definición
Notación r x s Definida como: r x s = {t q | t r y q s} Asume que los atributos de r(R) y s(S) son disjuntos. (Esto es, R S = ). Si los atributos de r(R) y s(S) no son disjuntos, entonces se utilizará la operación renombramiento. ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
6
Combinación de operaciones
Puede construir expresiones usando múltiples operaciones. Ejemplo: A=C(r x s) r x s A=C(r x s) A B C D E 1 2 10 20 a b A B C D E 1 2 10 20 a b ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
7
Operación renombramiento
Nos permite dar un nombre y por tanto referirnos a resultados de expresiones del álgebra Nos permite referirnos a una relación por medio de más de un nombre. Ejemplo: x (E) retorna la expresión E con el nombre X ISi una expresión E del álgebra relacional tiene una ariedad n, entonces retorna el resultado de la expresión E bajo el nombre X, y con atributos renombrados como A1 , A2 , …., An . ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
8
ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
Ejemplo bancario ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
9
ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
Ejemplo sucursal (nombre sucursal, ciudad sucursal, activos) cliente (nombre cliente, calle cliente, ciudad cliente) ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
10
ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
Ejemplo cuenta (numero cuenta, nombre sucursal, saldo) préstamo(numero prestamo, nombre sucursal, importe) ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
11
ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
Ejemplo impositor(nombre cliente, numero cuenta) prestatario (nombre cliente, numero prestamo) ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
12
Ejemplo importe > 1200 (prestamo)
Encontrar todos los préstamos sobre $1200 importe > 1200 (prestamo) Encontrar el número de préstamo para cada préstamo de monto mayor a $1200 numero_prestamo (importe > 1200 (prestamo)) Encuentre los nombres de todos los clientes que tienen un préstamo, una cuenta o ambos en el banco. nombre_cliente (prestatario) nombre_cliente (impositor) ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
13
Ejemplo nombre_cliente (nombre_sucursal=“Galapagar”
Encuentre todos los nombres de clientes que tienen un préstamo en la sucursal Galapagar. nombre_cliente (nombre_sucursal=“Galapagar” (prestatario.numero_prestamo= prestamo.numero_prestamo(prestatario x prestamo))) Encuentre todos los nombres de todos los clientes que tienen un préstamo en la sucursal Galapagar pero no tienen una cuenta en ninguna de las sucursales del banco. nombre_cliente (nombre_sucursal= “Galapagar” (prestatario.numero_prestamo= prestamo.numero_prestamo(prestatario x prestamo))) – nombre_cliente(impositor) ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
14
ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
Ejemplo Encuentre el mayor saldo en una cuenta Estrategia: Encontrar los saldos que no son los más grandes Renombrar la relación cuenta como d de tal manera que se pueda comparar cada saldo de cuenta con todos los demás. Use diferencia de conjuntos para encontrar aquellos saldos que no fueron encontrados en el primer paso. La consulta es: balance(account) - account.balance (account.balance < d.balance (account x rd (account))) ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
15
Definición formal del álgebra relacional
Una expresión básica en el álgebra relacional consiste de una de las siguientes: Una relación en la base de datos Una relación constante Sean E1 y E2 expresiones del álgebra relacional; las siguientes son expresiones del álgebra relacional: E1 E2 E1 – E2 E1 x E2 p (E1), P es un predicado con los atributos de E1 s(E1), S es una lista que contiene algunos de los atributos de E1 x (E1), x es el nuevo nombre del resultado de E1 ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
16
ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
Otras operaciones Se define operaciones adicionales que no añaden un poder al álgebra relacional, pero pueden simplificar consultas comunes. Intersección de Conjuntos Unión natural División Asignación ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
17
Ejemplo de intersección de conjuntos
Relaciones r, s: A B A B 1 2 2 3 r s r s A B ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
18
Intersección de conjuntos
Notación: r s Definida como: r s = { t | t r y t s } Se asume: r, s tienen la misma ariedad Atributos de r y s son compatibles Nótese: r s = r – (r – s) ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
19
Operación Unión natural
Notación: r s Sean r y s relaciones en esquemas R y S respectivamente. Entonces, r s es un una relación en el esquema R S que se obtiene de la siguiente manera: Considere cada par de tuplas tr de r y ts de s. Si tr y ts tienen el mismo valor en cada uno de los atributos en R S, añadir una tupla t al resultado, donde t tiene el mismo valor que tr en r t tiene el mismo valor que ts en s Ejemplo: R = (A, B, C, D) S = (E, B, D) Esquema resultante = (A, B, C, D, E) r s se define como: r.A, r.B, r.C, r.D, s.E (r.B = s.B r.D = s.D (r x s)) ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
20
Ejemplo de Unión natural
Relaciones r, s: B D E A B C D 1 3 2 a b 1 2 4 a b r s r s A B C D E 1 2 a b ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
21
ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
Operación División Notación: r s Apropiada para consultas que incluyan la frase “para todos”. Sean r y s relaciones bajo los esquemas R y S respectivamente Donde, R = (A1, …, Am , B1, …, Bn ) S = (B1, …, Bn) El resultado de r s es una relación bajo el esquema R – S = (A1, …, Am) r s = { t | t R-S (r) u s ( tu r ) } Donde tu significa la concatenación de tuplas t y u para producir una sola tupla. ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
22
ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
Ejemplo de división Relaciones r, s: A B B 1 2 3 4 6 1 2 s r s: A r ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
23
Otro ejemplo de división
Relaciones r, s: A B C D E D E a a b 1 3 a b 1 s r A B C r s: a ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
24
ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
Operación división Propiedad Sea q = r s Entonces q es la relación más grande que satisface q x s r Definición en términos de operaciones básicas del álgebra relacional Sean r(R) y s(S) relaciones, y sea S R r s = R-S (r ) – R-S ( ( R-S (r ) x s ) – R-S,S(r )) Porque R-S,S (r) simplemente reordena atributos de r R-S (R-S (r ) x s ) – R-S,S(r) ) proporciona las tuplas t en R-S (r ) tal que para alguna tupla u s, tu r. ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
25
ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
Operación Asignación La operación asignación () provee una manera conveniente de expresar consultas complejas. Escribir una consulta como un programa secuencial consistente de Una serie de asignaciones Seguidas por una expresión cuyo valor se despliega como resultado de una consulta. Se debe realizar una asignación a una variable de relación temporal. Ejemplo: Escribir r s como temp1 R-S (r ) temp2 R-S ((temp1 x s ) – R-S,S (r )) resultado = temp1 – temp2 El resultado a la derecha de es asignado a la variable de relación a la izquierda de . Se puede utilizar a la variable en expresiones subsiguientes. ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
26
ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
Otros ejemplos Encuentre el nombre de todos los clientes que tienen un préstamo y una cuenta en el banco. customer_name (borrower) customer_name (depositor) Encuentre el nombre de todos los cientes que tienen un préstamo en el banco y el importe del préstamo customer_name, loan_number, amount (borrower loan) ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.