Algebra Relacional




De la entrada anterior en el blog, revise  la informacion y los enlaces.

responda lo siguiente:
Que es algebra relacional
como se aplica el algebra relacional a la optimizacion de consultas en Mysql
Como se representa la proyeccion y la seleccion   relacionado con las consultas  a  bases de datos
Para que nos sirve la division (hablando de algebra relacional) en las consultas
presente  2 ejemplos que incluyan la utilizacion de el algebra relacional


¿Qué es Algebra Relacional?

Es un lenguaje de procedimientos de alto nivel que permite, mediante el uso de ciertos operadores, derivar las tablas deseadas desde las tablas base del modelo relacional.

Consta de un conjunto de operadores que toman como entrada una o dos relaciones y producen como resultado una nueva relacion.


¿Como se aplica el Algebra Relacional a la optimización de consultas en Mysql?

Diferentes implementaciones para ejecutar las diferentes operaciones del algebra relacional
utilizan las estructuras de almacenamiento y sus caminos de acceso creados para la Base de datos especifica
Operaciones: Ordenar, restringir, proyectar, reunir, unir, etc.

¿Como se representa la proyeccion y la seleccion relacionando con las consultas a bases de datos?

La operación de proyección permite seleccionar algunos atributos de una relación (sea ésta una relación o el resultado de otras operaciones). Formalmente, dada una relaciónR(A1, A2, ... , An), y un subconjutno de atributos de esa relación (Ai, Aj, ..., Ak), la proyección sobre esos atributos se denota como R(Ai, Aj, ..., Ak), y contiene las partes de las tuplas con los valores de los atributos proyectados.
Es importante notar lo siguiente en las proyecciones:
  • Como el resultado de cualquier operación de álgebra relacional es una relación, las tuplas repetidas en el resultado de la proyección se eliminarán.
  • El orden de los atributos en la proyección no tiene que ser el mismo que en la relación original.
La operación de proyección en el lenguaje de consulta SQL se realiza simplemente especificando el subconjunto de atributos en la cláusula SELECT.
SELECT Ai, Aj, ..., Ak FROM R
Por ejemplo, si tuviésemos la siguiente extensión de la tabla PROFESORES:
TABLA 1
dniapellidosnombrefecha-nacimientoes-doctorteléfono-móvilD_nombre
32323PérezJuan30/10/1965true65454545Matemáticas
4434343DíezJosé30/10/1970true65789767Historia
23423432SánchezJuan30/10/1980false66789899Matemáticas
La siguiente sentencia SELECT hace una proyección del nombre y los apellidos.
SELECT nombre, apellidos FROM PROFESORES
Es importante notar que la siguiente sentencia no devolvería una relación, ya que tendría dos tuplas repetidas.
SELECT nombre FROM profesores
Para asegurar que el resultado es una relación en el sentido matemático, hay que utilizar el modificador DISTINCT.
SELECT DISTINCT nombre FROM profesores



La selección es una operación que elige algunas tuplas de una relación y elimina el resto. La nueva relación contiene por tanto solo tuplas seleccionadas que cumplen una determinada condición de selección C La condición de selección es una condición lógica que permita decidir qué incluir y qué no.
Los atributos de la selección son los mismos que los de la relación original, y todas las tuplas de la selección cumplen la condición C. Por ejemplo:
R := DEPARTAMENTOS(grado-experimentalidad >1.0)
Q := PROFESORES(no es-doctor y teléfono-móvil <> null)
En SQL, la selección se especifica mediante la cláusula WHERE. Por ejemplo:
SELECT * FROM DEPARTAMENTOS
WHERE grado-experimentalidad > 1.0
SELECT * FROM PROFESORES
WHERE not es doctor and teléfono-móvil IS NOT NULL.

¿Para que nos sirve la division (hablando de algebra relacional) en las consultas?
Para comparar y seleccionar ciertos datos que cumplan con condiciones que hayamos establecido.

Presente  2 ejemplos que incluyan la utilizacion de el algebra relacional