MODELO RELACIONALThis is a featured page

El álgebra relacional es un conjunto de operaciones que describen paso a paso como computar una respuesta sobre las relaciones, tal y como éstas son definidas en el modelo relacional. Denominada de tipo procedimental, a diferencia del Cálculo relacional que es de tipo declarativo.
Describe el aspecto de la manipulación de datos. Estas operaciones se usan como una representación intermedia de una consulta a una base de datos y, debido a sus propiedades algebraicas, sirven para obtener una versión más optimizada y eficiente de dicha consulta.



Básicas [editar]
Cada operador del álgebra acepta una o dos relaciones y retorna una relación como resultado. σ y Π son operadores unarios, el resto de los operadores son binarios. Las operaciones básicas del álgebra relacional son:
Selección (σ) [editar] Permite seleccionar un subconjunto de tuplas de una relación (R), todas aquellas que cumplan la(s) condición(es) P, esto es:
\sigma_P(R) \!
Ejemplo:
\sigma_{Apellido=Gomez}(Alumnos) \!
Selecciona todas las tuplas que contengan Gómez como apellido en la relación Alumnos

Proyección (Π) [editar] Permite extraer columnas(atributos) de una relación, dando como resultado un subconjunto vertical de atributos de la relación, esto es:
\Pi_{A_1,A_2,\dots,A_n}(R)
donde A_1,A_2,\dots,A_n son atributos de la relación R .
Ejemplo:
\Pi_{Apellido,Semestre,NumeroControl}(Alumnos) \!
Selecciona los atributos Apellido, Semestre y NumeroControl de la relación Alumnos, mostrados como un subconjunto de la relación Alumnos

Producto cartesiano (x) [editar] El producto cartesiano de dos relaciones se escribe como:R \times S 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:
Alumnos \times Maestros
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 las atributos de la relación Alumnos seguidos por las tuplas de la relación Maestros.

Unión (∪) [editar] La operaciónR \cup S retorna el conjunto de tuplas que están en R, o en S, o en ambas. R y S deben ser uniones compatibles.

Diferencia (-) [editar] La diferencia de dos relaciones, R y S denotada por:R - S  \! 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 [editar] Entre los operadores no básicos tenemos:

Intersección (∩) [editar] La intersección de dos relaciones se puede especificar en función de otros operadores básicos:R \cap S = R − (R − S) La intersección, como en Teoría de conjuntos, corresponde al conjunto de todas las tuplas que están en R y en S, siendo R y S uniones compatibles.

Combinación (⊲⊳) (Natural Join) [editar] Una combinación de dos relaciones es equivalente a:R ⊲⊳F S = σF (R × S) 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 (/) [editar] 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 \langle x,y \rangle en A.




4.2 Conjunto de operaciones en relaciones

  • R MODELO RELACIONAL - BASES DE DATOS VIRTUALES S, la unión de R y S es el conjunto de elementos que están en R o S o ambos. Un elemento solo aparece una sola vez.
  • R MODELO RELACIONAL - BASES DE DATOS VIRTUALES S, el conjunto de elementos que aparecen en ambos R y S
  • R - S, la diferencia de R y S, el conjunto de elementos que estan en R pero no en S. Es importante resaltar que R - S es diferente a S - R.
  • R / S, la división de una relación entre otra, debe cumplirse que para toda tupla en R exista su correspondiente en S.
Restricciones:
  1. R y S deben tener esquemas idénticos.
  2. El orden de las columnas debe ser el mismo
Ejemplos:
name address gender birthdate
Carrie Fisher 123 Maple St. F 9/9/99
Mark Hamill 456 Oak Rd. M 8/8/88


name address gender birthdate
Harrison Ford 789 Palm Dr. M 7/7/77
Carrie Fisher 123 Maple St. F 9/9/99

Unión
name address gender birthdate
Harrison Ford 789 Palm Dr. M 7/7/77
Mark Hamill 456 Oak Rd. M 8/8/88
Carrie Fisher 123 Maple St. F 9/9/99

Intersección
name address gender birthdate
Carrie Fisher 123 Maple St. F 9/9/99

Resta
name address gender birthdate
Mark Hamill 456 Oak Rd. M 8/8/88

4.3 Proyección MODELO RELACIONAL - BASES DE DATOS VIRTUALES

  • Crea una nueva relación a partir de otra, pero incluyendo sólo algunas de las columnas
  • MODELO RELACIONAL - BASES DE DATOS VIRTUALES A1,A3,A6 (R)

title
year
length
filmType
studioName
Star Wars
1977
124
color
Fox
Mighty Ducks
1991
104
color
Disney
Wayne's World
1992
95
color
Paramount

Movie
Ejemplo:
MODELO RELACIONAL - BASES DE DATOS VIRTUALES title,year,length(Movie)
title
year
length
Star Wars
1977
124
Mighty Ducks
1991
104
Wayne's World
1992
95

MODELO RELACIONAL - BASES DE DATOS VIRTUALES filmType(Movie)
filmType
color


4.4 Selección MODELO RELACIONAL - BASES DE DATOS VIRTUALES

  • Crea una nueva relación a partir de otra, pero incluyendo sólo algunas de las tuplas a partir de un criterio dado.
  • El criterio se basa en restricciones sobre los atributos de la relación R y no pueden incluirse otras relaciones en dicho criterio que no esten en R
  • MODELO RELACIONAL - BASES DE DATOS VIRTUALES A3>16 (R) , MODELO RELACIONAL - BASES DE DATOS VIRTUALES A3>16 and A3 < 45 (R), MODELO RELACIONAL - BASES DE DATOS VIRTUALES nombre='Carlos' and edad=45 (R)
title
year
length
filmType
studioName
Star Wars
1977
124
color
Fox
Mighty Ducks
1991
104
color
Disney
Wayne's World
1992
95
color
Paramount

Movie
Ejemplos:
MODELO RELACIONAL - BASES DE DATOS VIRTUALES length>=100 (Movie)
title
year
length
filmType
studioName
Star Wars
1977
124
color
Fox
Mighty Ducks
1991
104
color
Disney

MODELO RELACIONAL - BASES DE DATOS VIRTUALES length>=100 and studioName='Fox' (Movie)
title
year
length
filmType
studioName
Star Wars
1977
124
color
Fox


MODELO RELACIONAL - BASES DE DATOS VIRTUALES title,studioName( MODELO RELACIONAL - BASES DE DATOS VIRTUALES length>=100 (Movie))
title
studioName
Star Wars
Fox
Mighty Ducks
Disney

4.5 Asignación <--

Almacena temporalmente el resultado de un operación en un relación dada
LOLO <-- MODELO RELACIONAL - BASES DE DATOS VIRTUALES title,studioName( MODELO RELACIONAL - BASES DE DATOS VIRTUALES length>=100 (Movie))

4.6 División

Sean
A B C D
a b c d
a b e f
b c e f
e d c d
e d e f
a b d e
R
C D
c d
e f
S


A B
a b
e d

R / S
Ejemplo: Estudiantes que han tomado todos los cursos de "IS"
MODELO RELACIONAL - BASES DE DATOS VIRTUALES ID,num ( MODELO RELACIONAL - BASES DE DATOS VIRTUALESdepto='IS' (estudiante_cursos)) / MODELO RELACIONAL - BASES DE DATOS VIRTUALES num( MODELO RELACIONAL - BASES DE DATOS VIRTUALESdepto='IS'(cursos))

4.7 Producto cartesiano X

Producto cruz o solo producto
R X S, los esquemas de ambas relaciones se mezclan y unen.
Dados
A B
1 2
3 4
R
B C D
2 5 6
4 7 8
9 10 11
S
A R.B S.B C D
1 2 2 5 6
1 2 4 7 8
1 2 9 10 11
3 4 2 5 6
3 4 4 7 8
3 4 9 10 11

R X S

4.8 Producto natural |X|

Es un producto cartesiano donde nos interesan únicamente algunas tuplas que hacen "match" en algun criterio.
A R.B S.B C D
1 2 2 5 6
1 2 4 7 8
1 2 9 10 11
3 4 2 5 6
3 4 4 7 8
3 4 9 10 11


A B C D
1 2 5 6
3 4 7 8

R |X| S


esand0
esand0
Latest page update: made by esand0 , Sep 22 2009, 11:10 AM EDT (about this update About This Update esand0 Edited by esand0

644 words added
20 images added

view changes

- complete history)
Keyword tags: MODELO RELACIONAL
More Info: links to this page
Started By Thread Subject Replies Last Post
hugo-zuluaga hugo zuluaga 0 Sep 25 2009, 6:16 PM EDT by hugo-zuluaga
Thread started: Sep 25 2009, 6:16 PM EDT  Watch
taller 2 de algebra relacional
http://www.slideshare.net/hugofern/taller-2-de-algebra-relacional
Do you find this valuable?    
Keyword tags: None (edit keyword tags)

Anonymous  (Get credit for your thread)


Showing 1 of 1 threads for this page