Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Elementos y Aplicación PDF
Elementos y Aplicación PDF
Aplicación
Base de Datos I
1
Álgebra Relacional, elementos y
aplicación
Este modelo considera la base de datos como una colección de relaciones. De
manera simple, una relación representa una tabla que no es más que un conjunto
de filas, cada fila es un conjunto de campos y cada campo representa un valor que
interpretado describe el mundo real. Cada fila también se puede denominar tupla
o registro y a cada columna también se le puede llamar campo o atributo.
El lenguaje más común para construir las consultas a bases de datos relacionales es
SQL, Structured Query Language o Lenguaje Estructurado de Consultas, un estándar
implementado por los principales motores o sistemas de gestión de bases de datos
relacionales [Wiki,2009d]
Unión compatible
Una unión es compatible entre dos relaciones, si ellas poseen el mismo grado y su
dominio son los mismos de izquierda a derecha.
Grado
El grado es la cantidad de atributos de una relación.
Las operaciones:
2
Básicas
Cada operador del álgebra acepta una o dos relaciones y retorna una relación como
resultado. σ (sigma) y Π (Pi) son operadores unarios, el resto de los operadores
son binarios. Las operaciones básicas del álgebra relacional son:
Selección (σ)
Permite seleccionar un subconjunto de tuplas de una relación (R), todas aquellas
que cumplan la(s) condición(es) P, esto es:
Ejemplo:
Selecciona todas las tuplas que contengan Gómez como apellido en la relación
Alumnos.
Una condición puede ser una combinación booleana, donde se pueden usar
operadores como:
, combinándolos con operadores .
Proyección (Π)
Permite extraer columnas(atributos) de una relación, dando como resultado un
subconjunto vertical de atributos de la relación, esto es:
Ejemplo:
3
y entrega una relación, cuyo esquema corresponde a una combinación de todas las
tuplas de R con cada una de las tuplas de S, y sus atributos corresponden a los de R
seguidos por los de S.
Ejemplo:
Muestra una nueva relación, cuyo esquema contiene cada una de las tuplas de la
relación Alumnos junto con las tuplas de la relación Maestros, mostrando primero
los atributos de la relación Alumnos seguidos por las tuplas de la relación Maestros.
Unión ( )
La operación
Diferencia (-)
La diferencia de dos relaciones, R y S denotada por:
entrega todas aquellas tuplas que están en R, pero no en S. R y S deben ser uniones
compatibles.
Estas operaciones son fundamentales en el sentido en que (1) todas las demás
operaciones pueden ser expresadas como una combinación de éstas y (2) ninguna
de estas operaciones pueden ser omitidas sin que con ello se pierda información.
No básicas
Entre los operadores no básicos tenemos:
Intersección (∩)
La intersección de dos relaciones se puede especificar en función de otros
operadores básicos:
4
Combinación ( ) (Natural Join)
Esto es mucho más útil que el uso del operador básico producto cartesiano, pues
especifica una regla para la combinación de los atributos.
División (/)
Supongamos que tenemos dos relaciones A(x, y) y B (y) donde el dominio de y en A
y B, es el mismo.
El operador división A / B retorna todos los distintos valores de x tales que para
todo valor y en B existe una tupla en A. Ejemplo
Suponga las relaciones o tablas:
Alumno
5
6
“Mostrar los nombres de los alumnos y su apoderado”
7
ID
ID NOMBRE NOMBRE
CIUDAD apodera FONO ID_ALUMNO
(alumno) (alumno) apoderado
do
8
31 Rosita Concepción 457 José 454654 11
NOMBRE NOMBRE
ID (alumno) CIUDAD ID (apoderado) FONO ID_ALUMNO
(alumno) (apoderado)
Buenos
11 Juan Aires 457 José 454654 11
9
Ahora, aquí debemos mostrar sólo el nombre del alumno y el nombre del
apoderado, esto lo hacemos con un Project o Proyección, donde la tabla final sería:
ΠAlumnos.NOMBRE,Apoderados.NOMBRE
Pedro Paz
Juan José
Diego Víctor
Rosita María
10
Resultado 1
COD COD
ID ID_AL (inscritos) (cursos) NOMBRE FECHA_INICIO DURACIÓN VALOR
Como podemos observar, la combinación sólo nos entrega las combinaciones entre
Inscritos y Cursos en que COD sea igual entre los inscritos y el curso
correspondiente.
11
NOMB
ID DUR ID
ID_ COD COD NOMBRE FECHA RE
(inscrit ACIÓ VAL OR (alum CIUDAD
AL (inscritos) (cursos) (curso) _INICIO (alumno
o) N no)
)
3.20
1 01 05478 05478 Física 20-04 15 0 01 Pedro Santiago
2.50
2 01 02145 02145 Biología 15-02 12 0 01 Pedro Santiago
2.50
4 21 02145 02145 Biología 15-02 12 21 Diego Lima
0
Tabla final
Pedro Física
Pedro Biología
Juan Matemáticas
12
Diego Biología
Manuel Matemáticas
Cursos
Resultado final
NOMBRE VALOR
Biología 2.500
Música 1.500
13
Relación con la lógica de primer orden
Podemos definir una formula en base a combinaciones de formulas atómicas.
{T | φ(T )}
donde T es una variable tipo tupla y φ(T ) es una fórmula que describe a T. El
resultado de esta consulta, son todas las tuplas t para las cuales la fórmula es
verdadera.
14