Sunteți pe pagina 1din 41

Ing. Marco Galarza C.

BASES DE DATOS I
LGEBRA RELACIONAL

AGENDA
lgebra Relacional
Operaciones del lgebra relacional

Operaciones unitarias
Seleccionar
Proyectar
Eliminar

duplicados

Operaciones binarias
Producto

cartesiano

Unin
Interseccin
Diferencia
Join

o Reunin

LGEBRA RELACIONAL
Se denomina lgebra relacional a un conjunto
de operaciones encargadas de la manipulacin
de datos agrupados (relaciones).
Estas operaciones describen la manipulacin
de datos. Son en s, una representacin
intermedia de una consulta a una base de
datos.
Al aplicarse una operacin a una tabla, tengo
como resultado otra tabla.

OPERADORES
Operadores de comparacin (=, >, <, >=, <=,
<>)
Conjuncin ()
Disyuncin ()
Negacin ()

OPERACIONES UNITARIAS

OPERACIONES UNITARIAS

Seleccionar

Proyectar

Eliminar duplicados

SELECCIONAR ()

Selecciona el valor de ciertas tuplas.


=

Selecciona filas completas.

SELECCIONAR () EJEMPLOS
Pelicula

Actor

IdPelicula

Nombre

La Guerra de las Galaxias

Ao

IdActor

Nombre

Apellido

1977

Mark

Hamill

El Seor de los Anillos 1

2001

Cristopher

Lee

Mar Adentro

2004

Javier

Bardem

El Viaje de Chihiro

2001

Hugo

Weaving

= = < 2, , >

>2000 =
{<2, El Seor de los Anillos 1, 2001>,
<3, Mar Adentro, 2004>,
<4, El Viaje de Chihiro, 2001>}

SELECCIONAR () EN SQL
()

PROYECTAR ()

Selecciona el valor de ciertos atributos de


todas las tuplas de una relacin.
1,2,, = 1 , 2 , , :

Selecciona columnas completas.

PROYECTAR () EJEMPLOS
Pelicula

Actor

IdPelicula

Nombre

La Guerra de las Galaxias

IdActor

Nombre

Apellido

1977

Mark

Hamill

El Seor de los Anillos 1

2001

Cristopher

Lee

Mar Adentro

2004

Javier

Bardem

El Viaje de Chihiro

2001

Hugo

Weaving

Ao

= < 1977 >, < 2001 >, < 2004 >, <

PROYECTAR ()EN SQL


1,2,, ()

1 , 2 , ,

COMPOSICIN DE SELECCIONAR Y
PROYECTAR (, )
Pelicula

Actor

IdPelicula

Nombre

La Guerra de las Galaxias

Ao

IdActor

Nombre

Apellido

1977

Mark

Hamill

El Seor de los Anillos 1

2001

Cristopher

Lee

Mar Adentro

2004

Javier

Bardem

El Viaje de Chihiro

2001

Hugo

Weaving

(= ) = < >

(>2000 ) =
{<El Seor de los Anillos 1>,
<Mar Adentro>,
<El Viaje de Chihiro>}

COMPOSICIN ( Y ) EN SQL
1,2,, ( )

1 , 2 , ,

ELIMINAR DUPLICADOS ()

Elimina tuplas duplicadas en una relacin.


()
Pelicula

IdPelicula

Nombre

La Guerra de las Galaxias

1977

El Seor de los Anillos 1

2001

Mar Adentro

2004

El Viaje de Chihiro

2001

Ao

= < 1977 >, < 2001 >, <

OPERACIN () EN SQL
()

OPERACIONES BINARIAS

PRODUCTO CARTESIANO ()

Operacin binaria en la cual obtenemos una


nueva tabla con los atributos de las dos tablas
iniciales.
A

B
s

x
t

y
z

PRODUCTO CARTESIANO ()
=

, :

Ejemplo:
A

= {s,t,u}
B = {x,y,z}
A B = {s,t,u} {x,y,z}
{(s,x),(s,y),(s,z),(t,x),(t,y),(t,z),(u,x),(u,y),(u,z)}

La cardinalidad es =

PRODUCTO CARTESIANO ()
EJEMPLOS
Pelicula

Estudio

IdPelicula

Nombre

Ao

La Guerra de las Galaxias

1977

El Seor de los Anillos 1

IdEstudio

IdEstudio

Nombre

Direccion

Ghibli

India

2001

New Line Cinema

L.A.

Mar Adentro

2004

Lucasfilms

L.A.

El Viaje de Chihiro

2001

Sogecine

Barcelona

Pelicula Estudio =
{
<1,La Guerra de las Galaxias,1977,3,1,Ghibli,India>,
<1,La Guerra de las Galaxias,1977,3,2,New Line Cinema, L.A.>,
<1,La Guerra de las Galaxias,1977,3,3,Lucasfilms, L.A.>,
<1,La Guerra de las Galaxias,1977,3,4,Sogecine,Barcelona>,
<2,El Seor de los Anillos 1,2001,2,1,Ghibli, India>,
<2,El Seor de los Anillos 1,2001,2,2,New Line Cinema, L.A.>,
}

PRODUCTO CARTESIANO () EN SQL


1 2

1 , 2

SELECCIONAR COMBINACIONES
CORRECTAS
Pelicula

Estudio

IdPelicula

Nombre

La Guerra de las Galaxias

1977

El Seor de los Anillos 1

3
4

Ao

IdEstudio

IdEstudio

Nombre

Direccin

Ghibli

India

2001

New Line Cinema

L.A.

Mar Adentro

2004

Lucasfilms

L.A.

El Viaje de Chihiro

2001

Sogecine

Barcelona

.=. =
{
<1,La Guerra de las Galaxias,1977,3,3,Lucasfilms,L.A.>,
<2, El Seor de los Anillos 1,2001,2,2,New Line Cinema,L.A.>,
<3,Mar Adentro,2004,4,4,Sogecine,Barcelona>,
<4,El Viaje de Chihiro,2001,1,1,Ghibli,India>
}

SELECCIONAR COMBINACIONES
CORRECTAS EN SQL
1.=2. (1 2 )

1 , 2 1 . = 2 .

OPERACIONES DE CONJUNTOS

Se trabajan sobre dos o ms relaciones que


sean compatibles.

VENDEDOR_NORTE

VENDEDOR_SUR

CI

Nombre

Apellido

CI

Nombre

Apellido

1523658970

Jos

Prado

1298563213

Mario

Ulloa

1298563213

Mario

Ulloa

1125865489

Julio

Romo

1489635255

Pedro

Soto

1489635255

Pedro

Soto

UNIN ()
Esta operacin retorna un conjunto de tuplas
que estn en una o en ambas relaciones que
se asocian.
El resultado de esta operacin entregar a lo
ms la cantidad de tuplas de la primera
relacin sumada a la cantidad de tuplas de la
segunda.
Los elementos repetidos aparecern solo una
vez.

UNIN ()

UNIN ()

_ _
CI

Nombre

Apellido

1523658970

Jos

Prado

1298563213 Mario

Ulloa

1489635255 Pedro

Soto

1125865489 Julio

Romo

INTERSECCIN ()
Esta operacin, obtiene como resultado la
cantidad de tuplas que se encuentran en las
dos relaciones.
El resultado de esta operacin, a lo ms
entrega el total de tuplas de una de las dos
relaciones.

INTERSECCIN ()

INTERSECCIN ()

_ _
CI

Nombre

Apellido

1298563213 Mario

Ulloa

1489635255 Pedro

Soto

DIFERENCIA ()
Esta operacin entrega como resultado la
cantidad de tuplas que se encuentren en la
primera relacin pero no en la segunda.
El resultado de esta operacin, a lo ms
entrega el total de tuplas de la primera
relacin.

DIFERENCIA ()

DIFERENCIA ()

_ _
CI

Nombre

Apellido

1523658970

Jos

Prado

JOIN O REUNIN

Es equivalente a seleccionar las


combinaciones completas del producto
cartesiano. Algunos autores indican poner la
condicin de igualdad.
1.=2. (1 2 )

1 2

OPERACIN JOIN EN SQL


1 2

1 , 2 1 . = 2 .

OPERACIN JOIN EN MYSQL


1 2

1 2 ()

OPERACIN JOIN EN MSSQL


1 2

1 2 1 . = 2 .

LEFT JOIN / RIGHT JOIN

JOIN elimina algunos datos.


Los

que no estn en las dos tablas.

LEFT JOIN reemplaza los eliminados por


valores nulos en la tabla de la izquierda.
RIGHT JOIN reemplaza los eliminados por
valores nulos en la tabla de la derecha.

OPERACIN LEFT JOIN EN MYSQL


1 2

1 2 ()

EJEMPLO LEFT JOIN


Pelicula

Estudio

IdPelicula

Nombre

Ao

La Guerra de las Galaxias

1977

El Seor de los Anillos 1

3
4

IdEstudio

IdEstudio

Nombre

Direccion

Ghibli

India

2001

New Line Cinema

L.A.

Mar Adentro

2004

Lucasfilms

L.A.

El Viaje de Chihiro

2001

Sogecine

Barcelona

Nuevo Estudio

S/N

SELECT count(IdPelicula) AS CNT, estudio.Nombre


FROM estudio JOIN pelicula
USING (IdEstudio)

SELECT count(IdPelicula) AS CNT, estudio.Nombre


FROM estudio LEFT JOIN pelicula
USING (IdEstudio)

CNT

Nombre

Ghibli

New Line Cinema

Lucasfilms

Sogecine

CNT

Nombre

Ghibli

New Line Cinema

Lucasfilms

Sogecine

Nuevo Estudio

RESUMEN
Proyeccin (): elegir columnas.
Seleccin (): criterio para las filas.
Producto cartesiano (): producto de tablas.
Join o Reunin ( ): combinar tablas.
Operaciones de conjuntos.

S-ar putea să vă placă și