Академический Документы
Профессиональный Документы
Культура Документы
Algebra Relacional
Algebra relacional
Conjunto de operaciones usadas para manipular relaciones. Estas operaciones toman relaciones como operandos y regresan relaciones que a su vez pueden ser manipuladas. MR es cerrado. Los operadores: Uni on, diferencia, intersecci on. Con el signicado usual en conjuntos, aplicado a relaciones. Selecci on. Selecciona ciertas tuplas de una relaci on. Proyecci on. Selecciona ciertas columnas de una relaci on. Productos y joins. Composici on de relaciones. Renombrado de relaciones y atributos.
Algebra Relacional
Selecci on
Notaci on: predicado (R ) Selecciona tuplas que satisfacen un predicado dado. Predicado: Operadores: (>, <, >=, <=, =, <>, , , ) Operandos: atributos o constantes. A B C D a a 1 7 Relaci on r: a b 5 7 b b 12 3 b b 23 10 A=B D >5 (R ) A a b B a b C 1 23 D 7 10
Algebra Relacional
Proyecci on
Notaci on: lista
de atributos (R )
Es una tabla obtenida de R al eliminar los atributos no-especicados. En la tabla resultante aparecen los atributos en el mismo orden que en la lista. Los renglones duplicados A B C a a 1 Relaci on r: a b 5 b b 12 b b 23 A a b b D 7 3 10
Algebra Relacional
se eliminan. D 7 7 3 10
A,D (R )
Uni on
Notaci on: R S Es la tabla que contiene las tuplas de la primera relaci on adem as de las tuplas de la segunda relaci on. Al adaptar los operadores de conjuntos a relaciones se debe asegurar que exista compatibilidad entre ellas.
Tienen el mismo grado. Los atributos tienen el mismo nombre. El dominio del atributo-i de R es el mismo que el dominio del atributo-i en S , i
A a Relaci on R: a b
B A 1 S: a 2 b 1
B 2 3
A a R S a b b
B 1 2 1 3
Algebra Relacional
Diferencia
Notaci on: R S Crea una tabla con las tuplas que est an en la relaci on R pero no en S. Operaci on v alida A a Relaci on R: a b A R S a b B 1 1 entre relaciones compatibles. B A B 1 S: a 2 2 b 3 1
Algebra Relacional
Producto Cartesiano
Notaci on: R S Permite combinar informaci on de cualquier par de relaciones. R S = {tq |t r and q s }. Si R y S tienen atributos en com un es necesario renombrarlos. Para evitar ambig uedades se precede el nombre del atributo con el nombre de la relaci on.
A Relaci on R: 1 3 A 1 1 1 3 3 3 R.B 2 2 2 4 4 4 B 2 S: 4 S.B 2 4 9 2 4 9 B C D 2 5 6 4 7 8 9 10 11 C D 5 6 7 8 10 11 5 6 7 8 10 11
Algebra Relacional
R S
Join natural
Notaci on: R S
R (X1 , X2 , ...Xm , Y1 , Y2 , ..., Yn ) S (Y1 , Y2 , ..., Yn , Z1 , Z2 , ..., Zp ) Relaci on con atributos X, Y, Z y poblado por el conjunto de tuplas que tienen igual valor de Y en R y en S. R S (R .Y1 =S .Y1 R .Y2 =S .Y2 ...R .Yn =S .Yn (R S )) A R 1 3 B C 2 5 S 4 7 9 10 Si las relaciones R y S no entonces A B A B B 2 4 D A B C D 6 = 1 2 5 6 8 3 4 7 8 11 tienen nombres de atributos en com un
Algebra Relacional
Theta Join
Notaci on: R S Equivalente al Join s olo que se permite usar cualquier condici on de comparaci on. (). El resultado se construye:
Toma el R S Selecciona s olo las tuplas que satisfacen
A B 1 2 R 6 7 9 7 A R.B 1 2 1 2 1 2 6 7 9 7
C 3 8 8 R.C 3 3 3 8 8
C 3 3 8 D 4 5 10 10 10
D 4 = 5 10
Algebra Relacional
Intersecci on
Notaci on: R S = R (R S ) Relaci on con las tuplas que est an en R y en S tambi en. Operaci on v alida A a Relaci on R: a b R S A a B 2 entre relaciones compatibles. B A B 1 S: a 2 2 b 3 1
Algebra Relacional
Renombrado
Notaci on: x (E ) x (A1 ,A2 ,...,An ) (E ) Asigna nombre a nueva relaci on. A Relaci on R: 1 3 w w ,x ,y ,z (R ) 1 3 la relaci on y/o a los atributos. No se obtiene una B 2 4 x 2 4 C 5 7 y 5 7 D 6 8 z 6 8
Algebra Relacional
Combinaci on de operadores
Algebra =
1 2
Argumentos b asicos + Formas de construcci on de expresiones. Los argumentos son las variables que representan las relaciones + tuplas constantes. Las expresiones se construyen aplicando los operadores y par entesis si se requieren. Consulta es una expresi on del algebra relacional.
Algebra Relacional
Precedencia de operadores
La forma normal de agrupar los operadores es:
1 2 3
Los operadores unarios: , , tienen mayor precedencia. Luego siguen los operadores multiplicativos: Los de menor prioridad son los aditivos: , , . ,
, .
Algebra Relacional
Expresiones y esquemas
Cada expresi on requiere un esquema: Si se aplican , , , usar el esquema de cualquiera de sus operandos. La proyecci on: usa los atributos listados en la proyecci on. Selecci on: no cambia el esquema. Producto R S usa los atributos de R y los de S. Theta join: igual que el producto. Join natural: usa los atributos de cada relaci on, los atributos en com un s olo aparecen una vez. Renombrado: usa el esquema indicado.
Algebra Relacional
Algebra Relacional
Ejemplos de consultas
1
Algebra Relacional
Ejemplos de consultas
1
Encontrar la informaci on de todos los pr estamos realizados en la sucursal Fuentes Brotantes. nombreSucursal =FuentesBrotantes (Prestamo ) Determinar el nombre de los clientes que viven en Guanajuato.
Algebra Relacional
Ejemplos de consultas
1
Encontrar la informaci on de todos los pr estamos realizados en la sucursal Fuentes Brotantes. nombreSucursal =FuentesBrotantes (Prestamo ) Determinar el nombre de los clientes que viven en Guanajuato. nombreCliente (ciudad =Guanajuato (Cliente )) Nombre de todos los clientes del banco que tienen una cuenta, un pr estamo o ambas cosas.
Algebra Relacional
Ejemplos de consultas
1
Encontrar la informaci on de todos los pr estamos realizados en la sucursal Fuentes Brotantes. nombreSucursal =FuentesBrotantes (Prestamo ) Determinar el nombre de los clientes que viven en Guanajuato. nombreCliente (ciudad =Guanajuato (Cliente )) Nombre de todos los clientes del banco que tienen una cuenta, un pr estamo o ambas cosas. a) nombreCliente (Prestatario ) b) nombreCliente (CtaCliente ) La respuesta es: nombreCliente (ctaCliente ) nombreCliente (Prestatario ) Relaci on de clientes que tienen abierta una cuenta pero no tienen ninguna de cr edito.
Algebra Relacional
Ejemplos de consultas
1
Encontrar la informaci on de todos los pr estamos realizados en la sucursal Fuentes Brotantes. nombreSucursal =FuentesBrotantes (Prestamo ) Determinar el nombre de los clientes que viven en Guanajuato. nombreCliente (ciudad =Guanajuato (Cliente )) Nombre de todos los clientes del banco que tienen una cuenta, un pr estamo o ambas cosas. a) nombreCliente (Prestatario ) b) nombreCliente (CtaCliente ) La respuesta es: nombreCliente (ctaCliente ) nombreCliente (Prestatario ) Relaci on de clientes que tienen abierta una cuenta pero no tienen ninguna de cr edito. nombreCliente (CtaCliente ) nombreCliente (Prestatario ) Todos los clientes que tienen un pr estamo y una cuenta abierta.
Algebra Relacional
Ejemplos de consultas
1
Encontrar la informaci on de todos los pr estamos realizados en la sucursal Fuentes Brotantes. nombreSucursal =FuentesBrotantes (Prestamo ) Determinar el nombre de los clientes que viven en Guanajuato. nombreCliente (ciudad =Guanajuato (Cliente )) Nombre de todos los clientes del banco que tienen una cuenta, un pr estamo o ambas cosas. a) nombreCliente (Prestatario ) b) nombreCliente (CtaCliente ) La respuesta es: nombreCliente (ctaCliente ) nombreCliente (Prestatario ) Relaci on de clientes que tienen abierta una cuenta pero no tienen ninguna de cr edito. nombreCliente (CtaCliente ) nombreCliente (Prestatario ) Todos los clientes que tienen un pr estamo y una cuenta abierta. nombreCliente (Prestatario ) nombreCliente (CtaCliente )
Algebra Relacional
Nombre de todos los clientes que tienen un cr edito en la sucursal de Fuentes Brotantes.
Algebra Relacional
Nombre de todos los clientes que tienen un cr edito en la sucursal de Fuentes Brotantes. nombreCliente (Prestatario .numPrestamo =Prestamo .numPrestamo (nombreSucursal =FuentesBrotantes (Prestatario Prestamo ))) Nombre de todos los clientes que tienen un pr estamo y el importe del mismo.
Algebra Relacional
Nombre de todos los clientes que tienen un cr edito en la sucursal de Fuentes Brotantes. nombreCliente (Prestatario .numPrestamo =Prestamo .numPrestamo (nombreSucursal =FuentesBrotantes (Prestatario Prestamo ))) Nombre de todos los clientes que tienen un pr estamo y el importe del mismo. nombreCliente ,importe (Prestatario prestamo ) El nombre de todas las sucursales con clientes que tienen una cuenta abierta en el banco y viven en Cuernavaca.
Algebra Relacional
Nombre de todos los clientes que tienen un cr edito en la sucursal de Fuentes Brotantes. nombreCliente (Prestatario .numPrestamo =Prestamo .numPrestamo (nombreSucursal =FuentesBrotantes (Prestatario Prestamo ))) Nombre de todos los clientes que tienen un pr estamo y el importe del mismo. nombreCliente ,importe (Prestatario prestamo ) El nombre de todas las sucursales con clientes que tienen una cuenta abierta en el banco y viven en Cuernavaca. nombreSucursal (Cliente .ciudad =Cuernavaca (Cliente CtaCliente Cuenta)) Todos los clientes que tienen una cuenta abierta y un pr estamo en el banco.
Algebra Relacional
Nombre de todos los clientes que tienen un cr edito en la sucursal de Fuentes Brotantes. nombreCliente (Prestatario .numPrestamo =Prestamo .numPrestamo (nombreSucursal =FuentesBrotantes (Prestatario Prestamo ))) Nombre de todos los clientes que tienen un pr estamo y el importe del mismo. nombreCliente ,importe (Prestatario prestamo ) El nombre de todas las sucursales con clientes que tienen una cuenta abierta en el banco y viven en Cuernavaca. nombreSucursal (Cliente .ciudad =Cuernavaca (Cliente CtaCliente Cuenta)) Todos los clientes que tienen una cuenta abierta y un pr estamo en el banco. nombreCliente (Prestatario CtaCliente )
Algebra Relacional
Algebra Relacional
Borrar las cuentas de G omez. Cuenta Cuenta nombreCliente =Gomez (CuentaCliente ) Borrar los prestamos con importe entre 0 y 8000 pesos.
Algebra Relacional
Borrar las cuentas de G omez. Cuenta Cuenta nombreCliente =Gomez (CuentaCliente ) Borrar los prestamos con importe entre 0 y 8000 pesos. Prestamo Prestamo importe 0importe 8000 (Prestamo ) Borrar las cuentas de Guanajuato.
Algebra Relacional
Borrar las cuentas de G omez. Cuenta Cuenta nombreCliente =Gomez (CuentaCliente ) Borrar los prestamos con importe entre 0 y 8000 pesos. Prestamo Prestamo importe 0importe 8000 (Prestamo ) Borrar las cuentas de Guanajuato. r1 ciudad =Guanajuato (Cuenta Sucursal ) r2 nombreSucursal ,numCta,saldo (r1 ) Cuenta Cuenta r2
Algebra Relacional
Algebra Relacional
Algebra Relacional
Algebra Relacional
Algebra Relacional
Algebra Relacional
Funciones de Agregaci on
Permiten combinar tuplas de una relaci on para producir un valor agregado. Las m as comunes son: sum, avg, count, min, max. Ejemplo: sumatributo (R ) crea una relaci on con un u nico atributo que es la suma de los valores de atributo en la relaci on R. Para evitar trabajar con duplicados se debe preceder la operaci on con distint.
Algebra Relacional