Professional Documents
Culture Documents
Es un lenguaje formal con una serie de operadores que trabajan sobre una o varias relaciones para obtener otra relacin resultado, sin que cambien las relaciones originales.
Esto permite anidar expresiones del lgebra, del mismo modo que se pueden anidar las expresiones aritmticas
Segn Codd la clasificacin ms importante del lgebra relacional entre estas tenemos
Restriccin. Proyeccin
Producto Cartesiano
Unin. Diferencia.
La restriccin y la proyeccin son operaciones unarias porque operan sobre una sola relacin. El resto de las operaciones son binarias porque trabajan sobre pares de relaciones. En las definiciones que se presentan a continuacin
Ejemplo
Se supone que R y S son dos relaciones cuyos atributos son: A=(a1, a2, ...,aN) y B = (b1, b2, ...,bN) respectivamente.
La restriccin, tambin denominada seleccin, opera sobre una sola relacin R y da como resultado otra relacin cuyas tuplas son las tuplas de R que satisfacen la condicin especificada. Esta condicin es una comparacin en la que aparece al menos un atributo de R, o una combinacin booleana de varias de estas comparaciones. La sintaxis P (r)seleccionar todas las tuplas que cumplen con el predicado de la relacin r
Ejemplo Seleccionar los clientes que sean mayores a 28 aos de la relacin clientes
Clientes Codigo_cli Nombre Apellido Edad Cdula
C_01
C_02 C_0 3 C_04
Patricio
Andrea Jos Daniela
Jimbo
Calle Lpez Guaan
15
20 30 35
012350254 -1
023491011-2 093456781-1 035105234-2
C_05
C_06
Fernando
Ismael
Salazar
Cabrera
29
27
101254326-1
102345678-1
6 Edad > 28 (Clientes) Codigo_cli C_03 Nombre Jos Apellido Lpez Edad 30 Cdula 093456781-1
C_04
C_07
Daniela
Fernando
Guaan
Salazar
35
29
035105234-2
101254326-1
El operador de proyeccin toma como argumento una relacin y el resultado es una nueva relacin.
C_0 3
C_04 C_05 C_06
Jos
Daniela Fernando Ismael
Lpez
Guaan Salazar Cabrera
30
35 29 27
093456781-1
035105234-2 101254326-1 102345678-1
El producto cartesiano obtiene una relacin cuyas tuplas estn formadas por la concatenacin de todas las tuplas de R con todas las tuplas de S. La restriccin y la proyeccin son operaciones que permiten extraer informacin de una sola relacin. El producto cartesiano ``multiplica" dos relaciones, definiendo una nueva relacin que tiene todos los pares posibles de tuplas de las dos relaciones. Si la relacin R tiene P tuplas y N atributos y la relacin S tiene Q tuplas y M atributos, la relacin resultado tendr tuplas y P*Q tuplas y N+M atributos.
Ejemplo
Alumnos
Cdigo
Alum_001 Alum_002 Alum_003
Asignaturas
Nombre
Carlos Ral Jos
Apellido
Barros Morocho Trelles
Direccin
Miraflores Ricaurte Gapal
Cdigo Nombre Matricula Asignaturas Mat_001 Mat_002 Mat_003 Matemticas Fsica Trigonometra
Nombre Asignaturas Matemticas Fsica Trigonometra Matemticas Fsica Trigonometra
Carga Horaria 12 14 16
Carga Horaria 12 14 16 12 14 16
Alumnos * Asignaturas
Cdigo Alum_001 Alum_002 Alum_003 Alum_001 Alum_002 Alum_003 Nombre Carlos Ral Jos Carlos Ral Jos Apellido Barros Morocho Trelles Barros Morocho Trelles Direccin Miraflores Ricaurte Gapal Miraflores Ricaurte Gapal Cdigo Matricula Mat_001 Mat_002 Mat_003 Mat_001 Mat_002 Mat_003
Alum_001
Alum_002 Alum_003
Carlos
Ral Jos
Barros
Morocho Trelles
Miraflores
Ricaurte Gapal
Mat_001
Mat_002 Mat_003
Matemticas
Fsica Trigonometra
12
14 16
Las relaciones R y S compuestas por las tuplas a1, a2, aN y las tuplas b1, b2,bN se obtiene una nueva relacin fdtdrt denominada Z la misma que se encuentra conformada por las tuplas a1, a2, aN, b1, b2, bN
Se dice que dos relaciones son compatibles para la unin si ambas fdtdrt tienen la misma cabecera, es decir, si tienen el mismo nmero de atributos y stos se encuentran definidos sobre los mismos dominios.
En muchas ocasiones ser necesario realizar proyecciones para fdtdrt hacer que dos relaciones sean compatibles para la unin.
Ejemplo.
Importaciones
Cdigo Imp_01 Imp_02 Imp_03 Descripcin Fecha Televisores Motocicletas Celulares 01/Abril/05 15/Mayo/05 15/Abril/05 Valor 1350,00 3648,08 1690,82
Exportaciones
Valor 6390,33 10698,39 6480,40 Descripcin Computadores Refrigeradores Equipo Sonido Fecha 08/Marzo/05 09/Julio/05 10/Agosto/05 Cdigo Exp_09 Exp_10 Exp_12
Importaciones U Exportaciones
Cdigo Imp_01 Descripcin Televisores Fecha 01/Abril/05 Valor 1350,00
Imp_02
Imp_03 Exp_09 Exp_10 Exp_12
Motocicletas
Celulares Computadores Refrigeradores Equipo Sonido
15/Mayo/05
15/Abril/05 08/Marzo/05 09/Julio/05 10/Agosto/05
3648,08
1690,82 6390,33 10698,39 6480,40
La diferencia obtiene una relacin que tiene las tuplas que se encuentran en R y no se encuentran en S. Para realizar esta operacin, R y S deben ser compatibles para la unin Sean las relaciones R y S formados por las tuplas a1, a2, aN y b1, b2, bN respectivamente resulta una nueva relacin denominada Z con las Tuplas c1, c2, cN que es el resultado de la diferencia de R y S
Ejemplo (Diferencia)
Curso Ingles
Cdigo Nombre Apellido Direccin
Alu_001
Alu_010 Alu_112 Alu_420 Alu_100
Juan
Pal Carlos Gabriel Ral
Torres
Cabrera Santos Prez Martnez
Curso Matemticas
Cdigo Alu_120 Alu_010 Alu_001 Nombre Carlos Ral Juan Apellido Cabrera Torres Direccin Totoras Juan B. Parra S/N Contreras Salesianos 11-41
El Clculo relacional es un lenguaje de consulta que describe la respuesta deseada sobre una Base de Datos sin especificar como obtenerla.
Podemos definir una formula en base a combinaciones Tipo tupla o tipo dominio con atributos o constantes Gracias al uso de operadores como <, >, =, !=, <=, >=.
Clases de Clculos
Tambin dos Clases de Clculo Relacional:
Clculo Relacional basado en Tuplas. (TRC) Una consulta en TRC es de la forma:
CLCULO
{T | (T )}
RELACIONAL
Donde T es una variable tipo tupla y (T ) es una frmula que describe a T. El resultado de esta consulta, son todas las tuplas t para las cuales la frmula es verdadera.
Sintaxis Consulta en TRC La sintaxis es definida a partir de la lgica de primer orden. Donde la variable a utilizar son de tipo tupla. Una variable es libre en una frmula (o subfrmula) si la (sub) frmula no contiene ninguna ocurrencia de cuantificadores que la limiten. En una consulta en TRC de la forma: {T | (T )}, T es la nica variable libre.