jueves, 13 de diciembre de 2018

Álgebra Relacional

Es un método que consiste básicamente en crear o construir nuevas relaciones a partir de relaciones existentes.
Existen 2 tipos de operadores algebraicos:
  • Operadores básicos o primitivos.
  • Operadores no básicos o derivados.
Operadores básicos o primitivos.
Se clasifican en:
  1. Proyección (π).
  2. Selección (σ).
  3. Unión (U).
  4. Diferencia (-).
  5. Producto cartesiano (X).
Proyección.
Este operador permite extraer columnas de una relación y de esta manera crea un subconjunto de atributos de la relación, además elimina las filas duplicadas.
Ejemplo
PERSONA
CODIGONOMBREEDADTELEFONOCIUDAD
1PEDRO243182405QUITO
2SONIA153234534QUITO
3ERIK184102405GUAYAQUIL
4ANDREA274089129GUAYAQUIL
π NOMBRE, CUIDAD (PERSONA)
NOMBRECUIDAD
PEDROQUITO
SONIAQUITO
ERIKGUAYAQUIL
ANDREAGUAYAQUIL
Selección.
Este operador permite seleccionar un subconjunto de filas o registros de una relación y de acuerdo a la condición planteada los registros serán seleccionados para formar parte de un nuevo subconjunto.
Ejemplo
PERSONA
CODIGONOMBREEDADTELEFONOCIUDAD
1PEDRO243182405QUITO
2SONIA153234534QUITO
3ERIK184102405GUAYAQUIL
4ANDREA274089129GUAYAQUIL
σ CODIGO>2 (PERSONA)
CODIGONOMBREEDADTELEFONOCIUDAD
3ERIK184102405GUAYAQUIL
4ANDREA274089129GUAYAQUIL
Unión.
La unión de 2 relaciones R y S es otra relación la cual va a tener los registros de R en  S o en ambas, además se eliminan los registros duplicados.
En esta relación R y S deben ser compatibles es decir que deben estar definidas sobre el mismo conjunto de atributos.
Ejemplo
EMPLEADO
CÓDIGONOMBRESUELDO
1KEVIN550
2EDUARDO300
3JESSICA240
4NANCY430
JEFE
CÓDIGONOMBRESUELDO
5PEDRO800
2EDUARDO300
6ADRIAN1000
4NANCY430
8JUAN180
EMPLEADO U JEFE
CÓDIGONOMBRESUELDO
1KEVIN550
2EDUARDO300
3JESSICA240
4NANCY430
5PEDRO800
6ADRIAN1000
8JUAN180
Diferencia.
La diferencia de 2 relaciones R y S es otra relación la cual va a tener los registros que están en R pero no están en S.
En esta relación R y S deben ser compatibles.
Ejemplo
EMPLEADO
CÓDIGONOMBRESUELDO
1KEVIN550
2EDUARDO300
3JESSICA240
4NANCY430
JEFE
CÓDIGONOMBRESUELDO
5PEDRO800
2EDUARDO300
6ADRIAN1000
4NANCY430
8JUAN180
EMPLEADO – JEFE
CODIGONOMBRESUELDO
1KEVIN550
3JESSICA240
JEFE – EMPLEADO
CODIGONOMBRESUELDO
5PEDRO800
6ADRIAN1000
8JUAN180
Producto cartesiano.
Es  una relación que consiste en la concatenación de cada una de las filas de la relación R con cada una de las filas de la relación S.
Ejemplo
PROVINCIA
CÓDIGONOMBREPOBLACION
5PICHINCHA800
2AZUAY300
6GUAYAS1000
4COTOPAXI430
CIUDAD
CÓDIGOCIUDAD
C1QUITO
C2CUENCA
C3GUAYAQUIL
PROVINCIA X CIUDAD
CÓDIGONOMBREPOBLACIONCODIGOCIUDAD
5PICHINCHA800C1QUITO
5PICHINCHA800C2CUENCA
5PICHINCHA800C3GUAYAQUIL
2AZUAY300C1QUITO
2AZUAY300C2CUENCA
2AZUAY300C3GUAYAQUIL
6GUAYAS1000C1QUITO
6GUAYAS1000C2CUENCA
6GUAYAS1000C3GUAYAQUIL
4COTOPAXI430C1QUITO
4COTOPAXI430C2CUENCA
4COTOPAXI430C3GUAYAQUIL
Operadores no básicos o derivados.
Se clasifican en:
  1. Intersección (∩).
  2. Unión natural ().
  3. División (/).
Intersección.
Es  una relación que contiene el conjunto de todas las filas que están tanto en la relación R como en S.
R y S deben ser compatibles.
Ejemplo
EMPLEADO
CODIGONOMBRESUELDO
1KEVIN550
2EDUARDO300
3JESSICA240
4NANCY430
JEFE
CODIGONOMBRESUELDO
5PEDRO800
2EDUARDO300
6ADRIAN1000
4NANCY430
8JUAN180
EMPLEADO – JEFE
CODIGONOMBRESUELDO
2EDUARDO300
4NANCY430
Unión natural.
El resultado es una relación con los atributos de ambas relaciones y se obtiene combinando vas filas de ambas relaciones que tengan el mismo valor en los atributos comunes.
El join se lo usa entre los atributos comunes de las entidades o tablas que poseen la clave primaria de una tabla foránea correspondiente de otra entidad.
Ejemplo
PROVINCIA
CODIGONOMBREPOBLACIONCODIGO_CIUDAD
5PICHINCHA8001
2AZUAY3003
6GUAYAS10003
4COTOPAXI4301
CIUDAD
CODIGO_CIUDADCIUDAD
1QUITO
2CUENCA
3GUAYAQUIL
CÓDIGONOMBREPOBLACIONCODIGO_CIUDADCODIGO_CIUDADCIUDAD
5PICHINCHA80011QUITO
5PICHINCHA80012CUENCA
5PICHINCHA80013GUAYAQUIL
2AZUAY30031QUITO
2AZUAY30032CUENCA
2AZUAY30033GUAYAQUIL
6GUAYAS100031QUITO
6GUAYAS100032CUENCA
6GUAYAS100033GUAYAQUIL
4COTOPAXI43011QUITO
4COTOPAXI43012CUENCA
4COTOPAXI43013GUAYAQUIL
RESULTADO
CODIGONOMBREPOBLACIONCODIGO_CIUDADCODIGO_CIUDADCIUDAD
5PICHINCHA80011QUITO
2AZUAY30033GUAYAQUIL
6GUAYAS100033GUAYAQUIL
4COTOPAXI43011QUITO
Outer Join.
Es una variante del join en la que se intenta mantener toda va información de los operandos, incluso para aquellas que no encajan o entran en juego en el Join, se rellena con nulos las filas que no tienen correspondencia en el Join.
Existen 3 variantes:
  1. Left.
  2. Right
  3. Full
Left
Se tiene en cuenta todas las filas del primer operando.
Right
Se tiene en cuenta todas las filas del segundo operando.
Full
Se tiene en cuenta todas las filas de ambos operandos.
División.
Define una relación sobre el conjunto de atributos C, incluido en la relación R, y que contiene el conjunto de valores de S, que en las filas de R están combinadas con cada una de las filas de S.
R
ABCD
1235
4359
3281
1227
1327
S
CD
35
27
R / S
AB
12

No hay comentarios.:

Publicar un comentario