Está en la página 1de 81

AlgebraRelacional

Ing.DanielDeSantiago

EresLibrede:
Copiar,distribuir,ycomunicar
pblicamentelaobra

Hacerobrasderivadas

BajolasCondicionesSiguientes:
Atribucin.Debesreconocerlaautoradelaobraenlostrminos
especificadosporelpropioautorolicenciante.
Nocomercial.Nopuedesutilizarestaobraparafinescomerciales.
LicenciamientoRecproco.Sialteras,transformasocreasunaobraa
partirdeestaobra,solopodrsdistribuirlaobraresultantebajouna
licenciaigualasta.

ThisworkislicensedundertheCreativeCommonsAttributionNoncommercialShareAlike2.5MexicoLicense.To
viewacopyofthislicense,visithttp://creativecommons.org/licenses/byncsa/2.5/mx/orsendalettertoCreative

Commons,171SecondStreet,Suite300,SanFrancisco,California,94105,USA.

Tema
AlgebraRelacional
OperadoresyOperandosdeun
ModeloRelacional

Introduccin

Unlenguajedeconsultaesunlenguajeconelqueel
usuariosolicitainformacindelabasededatos:se
construyeunaexpresinquecontestainterrogantes
sobrelainstanciaactualdelabase.
Enestetemaseestudiarlacuestindelas
consultasdesdeunaperspectivaabstracta,
presentandolosprincipalesoperadoresestndar
quesehandefinidoenelModeloRelacional
Severaunlenguajepuroqueesrgidoyformal,
peroqueilustralastcnicasfundamentalesparala
extraccindelainformacin:elAlgebraRelacional

ConceptosBsicos

UnaBasedeDatosRelacionalmuestralas
tablasenformadefilasycolumnas
ciudad(nro_ciudadnom_ciudad)

a1
a5
a6
a9

LaPaz
SantaCruz
Tarija
Potos

Dominio.Eselconjuntodetodoslos
valorespermitidosqueunacolumnapuede
tomar.SetieneD1,D2,...,Dn,sitenemosn

columnas.

ConceptosBsicos

Productocartesiano.Deloanteriorsetiene
v1D1,v2D2,...,vnDn,porquecada
elementoesteneldominiorespectivo.En
matemticaspodemosdecirquelatuplaesun
elementodelproductocartesianodelos
dominios:

(v1,v2,....,vn)(D1xD2x.....xDn)=Xi=1,n(Di)

Tupla.Cadaunadelasfilasdeunatablase
componedenelementos(V1,V2,..,Vn).En
matemticasesteconjuntoordenadode

elementossellamatupla

ConceptosBsicos

Relacin.Esunsubconjuntodelproducto
cartesianodeunalistadedominios,no
necesariamentedisjuntos
Esporestoqueenellgebrarelacionalse
denominarelacinaunatablaytuplaaunfilade
tabla.

SmbolosdelLenguaje

Lossmbolosbsicosdellenguajeson:

smbolosdepuntuacin:parntesis"(",")"ycoma",".

smbolosdevariables:serepresentanmedianteletrasminsculas
delfinaldelalfabeto:r,s,t,u,v,w,x,y,z.
smbolosdeconstantes:serepresentanmedianteletrasminsculas
delprincipiodelalfabeto:a,b,c,d,e.
smbolosdefunciones:tambinserepresentanconletras
minsculas,perodelcentrodelalfabeto:f,g,h,i..
smbolosdepredicados:serepresentanmedianteletras
maysculas.
operadoreslgicos:(negacin),(implicacin),(conjuncin)y
(disyuncin).
cuantificadores: (cuantificadoruniversal)y(cuantificador
existencial).

SmbolosdelLenguaje

Lajerarquaenlaprecedenciadelosoperadoresy
cuantificadoreses(demayoramenor):
1), , 2) 3) 4)
Dichaprecedenciasepuedealterarutilizandolos
parntesis.
Losoperadoresy yelcuantificador seintroducen
enellenguajeporconveniencia,yaqueen

realidadnosonnecesariospues:

FG(F)G

x(F)x(F)

FG(FG)

LasOperacionesdelAlgebra
Relacional

Lasoperacionesdelgebrarelacional
manipulanrelaciones.Estosignificaque
estasoperacionesusanunoodos
relacionesexistentesparacrearunanueva
relacin.Estanuevarelacinpuede
entoncesusarsecomoentradaparauna
nuevaoperacin

LasOperacionesdelAlgebra
Relacional

Ellgebrarelacionalconstadenueve
operaciones:

Unin

Interseccin

Diferencia

Producto

Seleccin

Proyeccin

Reunin

Divisin

Renombrar

LasOperacionesdelAlgebra
Relacional

Unin()

Laoperacindeuninpermitecombinardatosde
variasrelaciones.Supongamosqueunadeterminada
empresainternacionalposeeunatabladeempleados
paracadaunodelospasesenlosqueopera.Para
conseguirunlistadocompletodetodoslosempleados
delaempresatenemosquerealizarunauninde
todaslastablasdeempleadosdetodoslospases.
Nosiempreesposiblerealizarconsultasdeunin
entrevariastablas,parapoderrealizarestaoperacin
esnecesarioeimprescindiblequelastablasaunir
tenganlasmismasestructuras,quesuscampossean
iguales.

OperacinUnion

Ejemplo:

TeniendodosrelacionesRyS,RS,esel
conjuntodetuplasquepertenecenaR,aSo
aambas.RySdebenteneresquemascon
conjuntosidnticosdeatributos

OperacinUnion,
R
Nombre

DireccinFecha

Nombre

DireccinFecha

JuanDaz
AnaGmez

C/Pez,109962
C/Luna,38358

JuanDaz
LuisDaz

C/Pez,109962
C/Sol,58567

RS

Nombre

Direccin

Fecha

JuanDaz
AnaGmez
LuisDaz

C/Pez,10
C/Luna,3
C/Sol,5

9962
8358
8567

LasOperacionesdelAlgebra
Relacional

Diferencia()

Laoperacindiferenciapermiteidentificarfilas
queestnenunarelacinynoenotra.
Tomandocomoreferenciaelcasoanterior,
deberamosaplicarunadiferenciaentrela
tablaRylatablaSparasaberaquellas
personasquenoestnenlasdostablas

OperacinDiferencia,

LadiferenciadedosrelacionesRyS,
RS,eselconjuntodetuplasdeRqueno
pertenecenaS.RySdebentener
esquemasconconjuntosidnticosde
atributos
RS

Nombre

Direccin

Fecha

AnaGmez

C/Luna,3

8358

LasOperacionesdelAlgebra
Relacional

Interseccin()

Laoperacindeinterseccinpermite
identificarfilasquesoncomunesendos
relaciones
AligualquelaoperacinUnion,parapoder
realizarestaoperacinesnecesarioe
imprescindiblequelastablasaunirtenganlas
mismasestructuras,quesuscampossean
iguales.

Interseccin

Equivalencia

RS(R(RS))

RS

JuanDaz

C/Pez,10

9962

LasOperacionesdelAlgebra
Relacional

Producto(x)

Laoperacinproductoconsisteenla
realizacindeunproductocartesianoentre
dostablasdandocomoresultadotodaslas
posiblescombinacionesentrelosregistrosde
laprimeraylosregistrosdelasegunda.Esta
operacinseentiendemejorconelsiguiente
ejemplo:

OperacinProducto
Cartesiano,

SeanRySdosrelacionesdegradomyn,
respectivamente.Elproductocartesiano,
RS,esunarelacindegradom+n
formadaportodaslasposiblestuplasen
lasquelosmprimeroselementos
constituyenunatupladeRylosnltimos
unatupladeS

OperacinProducto
Cartesiano,
R

RXS

A
1
3

B
2
4

A
1
1
1
3
3
3

R.B
2
2
2
4
4
4

S.B
2
4
9
2
4
9

B
2
4
9

C
5
7
10
5
7
10

C
5
7
10

D
6
8
11

D
6
8
11
6
8
11

OperacinProducto
Cartesiano,
TablaA

TablaB

10

22

33

54

11

25

37

98

42

100

ElproductodeA*Bdaracomoresultadolasiguientetabla:

OperacinProducto
Cartesiano,
TablaA*TablaB

10

22

33

54

10

22

37

98

10

22

42

100

11

25

33

54

11

25

37

98

11

25

42

100

LasOperacionesdelAlgebra
Relacional

Seleccin()

Pormediodeestaoperacinseposibilitala
seleccindeunsubconjuntodetuplasdeuna
relacinquecorrespondenaunacondicin
(columnaOPERADORvalor)determinada
Elgrado(totaldecolumnasdelaRelacin),
seconserva

OperacinSeleccin,

FormatodeUso:(condicin)(RELACION)

Estaoperacineslaquenormalmentese
conocecomoconsulta.
Enestetipodeconsultaseempleanlos
diferentesoperadoresdecomparacin

F(R)

(=,>,<,>=,<=,<>)

Ylosoperadoreslgicos:

(and),(or),(not)

OperacinSeleccin,

Entonces,laseleccin,F(R),esel
conjuntodetuplastdeRtalesque,
cuandoparatodoisustituimoselisimo
componentedetporlaocurrencia
correspondienteenF,lafrmulaes
verdadera

OperacinSeleccin,
R

Nombre

Direccin

Fecha

JuanDaz
AnaGmez
LuisDaz

C/Pez,10
C/Luna,3
C/Sol,5

9962
8358
8567

LafrmulaesF=Nombre>B

F(R)

Nombre

Direccin

Fecha

JuanDaz
LuisDaz

C/Pez,10
C/Sol,5

9962
8567

EjemplosSeleccin,
PERSONA
Cedula Nombre Primer_Apellido
71134534Juan Mesa
Ana
23423445 Mara Betancur
12453535Gloria Betancur
75556743Pedro Ochoa
43533322Patricia Angel
78900456Carlos Betancur

Segundo_Apellido Sexo Direccin Telefono Salario


Uribe
M Cra25221 2567532 1,600,000
Bermudez
Garces
Pelaez
Guzmn
Agudelo

F
F
M
F
M

Cra451113
Tr.12435
Cll.6ta1445
Cll.45231
Cir.5125

3433444
2756533
2686885
2674563
4445775

1,300,000
1,700,000
1,200,000
1,350,000
1,500,000

EjemplosSeleccin,

Muestraelresultadodelassiguientes
selecciones:

cedula=71134534(PERSONA)

sexo="F"(PERSONA)

(primer_apellido="Bentancur")(sexo="F")(PERSONA)

sexo="M")(salarios>=1,350,000)(PERSONA)

EjemplosSeleccin,
cedula=71134534(PERSONA)
Resultado:
Cedula
Nombre Primer_Apellido
71134534 Juan
Mesa

Segundo_Apellido
Uribe

Sexo
M

Direccin
Cra25221

Telefono Salario
2567532 1,600,000

Segundo_Apellido

Sexo

Direccin

Telefono Salario

Bermudez
Garces

F
F

Cra451113
Tr.12435

sexo="F"(PERSONA)
Resultado:
Cedula
Nombre Primer_Apellido
Ana
23423445 Mara
Betancur
12453535 Gloria
Betancur

3433444 1,300,000
2756533 1,700,000

EjemplosSeleccin,
(primer_apellido="Bentancur")(sexo="F")(PERSONA)
Resultado:
Cedula
Nombre Primer_Apellido
Ana
23423445 Mara
Betancur
12453535 Gloria
Betancur

Segundo_Apellido

Sexo

Direccin

Telefono Salario

Bermudez
Garces

F
F

Cra451113
Tr.12435

3433444 1,300,000
2756533 1,700,000

Sexo
M
F
M
F
M

Direccin
Cra25221
Tr.12435
Cll.6ta1445
Cll.45231
Cir.5125

Telefono Salario
2567532 1,600,000
2756533 1,700,000
2686885 1,200,000
2674563 1,350,000
4445775 1,500,000

sexo="M")(salarios>=1,350,000)(PERSONA)
Resultado:
Cedula
Nombre
71134534 Juan
12453535 Gloria
75556743 Pedro
43533322 Patricia
78900456
Carlos

Primer_Apellido
Mesa
Betancur
Ochoa
Angel
Betancur

Segundo_Apellido
Uribe
Garces
Pelaez
Guzmn
Agudelo

LasOperacionesdelAlgebra
Relacional

Proyeccin()

Unaproyeccinesunaseleccinenlaque
seleccionamosaquelloscamposque
deseamosrecuperar.Tomandocomo
referenciaelcasodelaoperacinseleccin
esposiblequelonicoquenosinterese
recuperarseaelnmerodesegurosocial,
omitiendoasloscampostelfono,direccin,
etc..Esteltimocaso,enelque
seleccionamosloscamposquedeseamos,es
unaproyeccin.

OperacinProyeccin,

FormatodeUso:

<listadeatributos>(Relacin)

(x)(R)

Ejemplos:

Laproyeccin,X(R),dondeResuna
relacindefinidasobreelconjuntode
atributosTyXT,esunarelacin
constituidaporlascolumnasdeR
correspondientesalosatributosdeX

OperacinProyeccin,
R

Nombre

Direccin

Fecha

JuanDaz
AnaGmez
LuisDaz

C/Pez,10
C/Luna,3
C/Sol,5

9962
8358
8567

nombre,fecha de Nacimiento(R)

Nombre

Fecha

JuanDaz
AnaGmez
LuisDaz

9962
8358
8567

EjemplosProyeccin,
PERSONA
Cedula Nombre
71134534Juan
23423445AnaMara
12453535Gloria
75556743Pedro
43533322Patricia
78900456Carlos

Primer_Apellido
Mesa
Betancur
Betancur
Ochoa
Angel
Betancur

Segundo_Apellido
Uribe
Bermudez
Garces
Pelaez
Guzmn
Agudelo

Sexo
M
F
F
M
F
M

Direccin Telefono Salario


Cra25221 2567532 1,600,000
Cra451113 3433444 1,300,000
Tr.12435 2756533 1,700,000
Cll.6ta1445 2686885 1,200,000
Cll.45231 2674563 1,350,000
Cir.5125 4445775 1,500,000

EjemplosProyeccin,

Muestreelresultadodelassiguientes
proyecciones:

cedula,nombre,primer_apellido,segundo_apellido(PERSONA)
cedula,salario(PERSONA)
cedula,nombre,salario((sexo="M")(salario>=1,350,000)
(PERSONA))

EjemplosProyeccin,
cedula, nombre, primer_apellido, segundo_apellido

Resultado
Cedula
Nombre
71134534 Juan
23423445 AnaMara
12453535 Gloria
75556743 Pedro
43533322 Patricia
78900456 Carlos

cedula, salario

Primer_Apellido
Mesa
Betancur
Betancur
Ochoa
Angel
Betancur

Segundo_Apellido
Uribe
Bermudez
Garces
Pelaez
Guzmn
Agudelo

(PERSONA)

Resultado:
Cedula
Salario
71134534 1,600,000
23423445 1,300,000
12453535 1,700,000
75556743 1,200,000
43533322 1,350,000
78900456 1,500,000

(PERSONA)

EjemplosProyeccin,

cedula, nombre, salario

Resultado:
Cedula
Nombre
71134534 Juan
12453535 Gloria
75556743 Pedro
43533322 Patricia
78900456 Carlos

(sexo = "M")(salario >= 1,350,000)

Salario
1,600,000
1,700,000
1,200,000
1,350,000
1,500,000

(PERSONA))

LasOperacionesdelAlgebra
Relacional

Reunin(Join)

Lareuninseutilizapararecuperardatosa
travsdevariastablasconectadasunascon
otrasmedianteclusulasJOIN.Laoperacin
reuninsepuedecombinarconlas
operacionesseleccinyproyeccin

OperadorReunion,

Ejemplo:LauniondeRyS,dondese
refiereaunacondicinarbitrariasobrelos
atributosdeRyS,querepresentaremos
porC,R|><|CS,seconstruyecomo:

SeformaelproductocartesianoRyS
Seselecciona,enelproducto,sololatupla
quecumplanlacondicinC

OperadorReunion,
R

OperadorReunion,
LacondicinesC=A>=E
R|><|CS

S.A

S.C

LasOperacionesdelAlgebra
Relacional

ReunionNatural(JoinNatural)

SeanRySdosrelacionesconunoomas
atributosencomn.Lareunionnatural,R|><|
S,secalculadelmodosiguiente:
SecalculaelproductocartesianoRxS
ParacadaatributoAicomn,seseleccionan
lasfilasenlasqueelvalorR.Aicoincidenconel
valordeS.Ai
Realizadalaseleccin,eliminarlacolumna
S.Ai

OperadorReunionNatural
R

B
1

C
3

R|><|S

LasOperacionesdelAlgebra
Relacional

Divisin

Operacindellgebrarelacionalquecreauna
nuevarelacin,seleccionandolasfilasenuna
relacinquesecorrespondencontodaslas
filasenotrarelacin.

OperadorDivision,

SeanRySrelacionesdegradorys,
respectivamente,donder>syS.
Entonces,elcociente,RS,eselconjunto
detuplastdegrado(rs),talesquepara
todatuplaudeS,latupla(t,u)estaenR.

Entrminosdeoperacionesbsicas:

RS1,2,...,rs(R)1,2,...,rs((1,2,...,rs(R)S)R)

OperadorDivision,
R

RS

LasOperacionesdelAlgebra
Relacional

Renombrar()

DadalarelacinR,elrenombradodeRaS,
S(R),esunarelacinquetieneexactamente
lasmismastuplasylosmismosatributosque
R,sloqueelnombredelarelacinesS

OperadorRenombrar,

A
1
3

B
2
4

S(R)

A
1
3

B
2
4

Tema
StructuredQuery
Language
BreveintroduccinalSQL

SQL(StructuredQuery
Language

EllenguajeSQL(StructuredQueryLanguage,
"LenguajedeConsultaEstructurado")esuna
evolucindellenguajeSEQUEL(structured
englishquerylanguage)desarrolladoenIBM.
ElSQLseencuentranormalizadoporelInstituto
AmericanodeNormalizacin(ANSI)yfue
construidoenprincipiocomounlenguaje
algebraico,enriquecindosemstardecon
funcionespredicativas

Caractersticas

ElSQLesmanejablebajodosmodalidades
distintas:comomdulointeractivoque
proporcionaunpotentelenguajedeconsultas
interpretadasycomolenguajehuspeddeun
lenguajeanfitrin.
Respetalaindependenciaentreelnivel
conceptualylasaplicaciones(nivelexterno),ya
quepermitelacreacindeesquemasexternos
personalizados.
Garantizaunaseguridadtotaldeaccesoalos
datos,graciasaunadistribucinselectivade
prioridadesdeacceso.

Caractersticas

Garantizalaindependenciaentreelnivelconceptualyel
nivelinterno.Elusuariononotalapresenciadeun
ndice,esasuntodeladministradorelconseguirla
optimizacindelasejecuciones.
Permitelagestinmultiusuariodelosdatos.Cadafilaa
laqueseaccedeparasumodificacinqueda
automticamentebloqueadaporelsistema.Enparticular,
elSQLcontieneelconceptodetransaccin,quepermite
restaurarelestadoanteriordelaBDencasode
anomalas.
Independenciadelosvendedores.ElSQLesofertado
porlosprincipalesvendedores.Losprogramasquelo
utilizanpuedentransferirsedeunsistemadegestinde
BDaotroconmnimoesfuerzodeconversin.

EstructuradelLenguaje

LaestructuradellenguajeSQLcontiene
unlimitadonmerodeverbosopalabras
clave,distribuidosentresgrandesgrupos
funcionales:

DDLDataDefinitionLanguage(lenguajede
descripcindedatos)
DMLDataManipulationLanguage(lenguaje
demanipulacindedatos)
DCLDataControlLanguage(lenguajede

controldedatos)

EstructuradelLenguaje

DDL:Permiteladescripcindelaestructurade
laBD(tablas,vistas,ndices,...)
DML:Permiteelmanejodelastablasylasvistas
mediantesuscuatroverbos,correspondientesa
lascuatrooperacionesfundamentalessobrelos
datos.
DCL:Contienelosoperadoresparalagestinde
transacciones(COMMITyROLLBACK)y
prioridadesdeaccesoalosdatos(GRANTy
REVOKE)

EstructuradelLenguaje

LosComandosmasimportantesson:
DDL

DML

DCL

CREATE
DROP
ALTER

SELECT
INSERT
DELETE
UPDATE

GRANT
REVOKE
COMMIT
ROLLBACK

ConsultadeDatosconSQL

ElDQLDataQueryLanguage(lenguaje
deconsultadedatos)formapartedel
lenguajeDMLdeSQL.Elnicocomando
queperteneceaestelenguajeesel
verstilcomandoSELECT.Estecomando
permite:

Obtenerdatosdeciertascolumnasdeuna
tabla(proyeccin)

ConsultadeDatosconSQL

Obtenerregistros(filas)deunatablade
acuerdoconciertoscriterios(seleccin)
Mezclardatosdetablasdiferentes(union,
join)

Realizarclculossobrelosdatos

Agrupardatos

SintaxissencilladelSelect
SELECT*|{[DISTINCT]columna|expresin[[AS]alias],}
FROMtabla;

*.Elasteriscosignificaqueseseleccionantodaslascolumnas
DISTINCT.Hacequenosemuestrenlosvaloresduplicados
columna.Eselnombredelacolumnadelatablaquesedeseamostrar
expresin.UnaexpresinvalidaSQL
alias.Eselnombrequeseledaalacabeceradelacolumnaenel
resultadodeestainstruccin

SintaxissencilladelSelect

Ejemplos:

Seleccindetodoslosregistrosdelatabla
clientes:

Seleccindealgunoscampos

SELECT*FROMClientes;

SELECTnombre,apellido1,apellido2FROM
Clientes

RelacinconelAlgebra
Relacional

ElcomandoSELECTpermiteimplementar
deformaexactatodaslasconsultasdel
lgebrarelacional
Laproyeccin()seimplementaas:

nombre,apellido

(Cliente)

LaproyeccinenSQLseescribecomo:
SELECTnombre,apellidoFROMCliente;

RelacinconelAlgebra
Relacional

Laseleccin()seimplementausandola
clausulaWHERE.Porejemplo:

nombre=Pepe edad>25(Cliente)

EnSQLseescribiraas:
SELECT*FROMClienteWHERE
nombre='Pepeandedad>25

RelacinconelAlgebra
Relacional

EnlaclausulaWHEREsepuedenutilizar
lossiguientesoperadoresdecomparacin

Ylosoperadoreslgicos

>,<,>=,<=,=,<>
AND,OR,NOT

RelacinconelAlgebra
Relacional

Ejemplos:

/*Obtienealaspersonasentre25y50aos
deedad*/

SELECTnombre,apellidoFROMPersonas
WHEREedad>=25ANDedad<=50;

/*Obtienealaspersonasdemasde60aos
odemenosde20aos*/

SELECTnombre,apellidoFROMPersonas
WHEREedad>60oredad<20;

RelacinconelAlgebra
Relacional

ElProductoCartesiano(RXS)se
implementaenSQLas:

SELECT*FROMR,S

Ejemplo:Teniendodostablasunallamada
PelculasyotraEstudio.ElProducto
Cartesianoseescribiraas:

AlgebrarelacionalPelculaxEstudio

SQLSELECT*FROMPelcula,Estudio

RelacinconelAlgebra
Relacional

Pelcula

Estudio

ID_Pelcula
Nombre
Ao ID_Estudio
1
Laguerradelasgalaxias 1977 3
2
Lacomunidaddelanillo 2001 2
3
Maradentro
2004 4
4
ElviajedeChihiro 2001 1

ID_Estudio Nombre
1
Ghibli
2
NewLineCinema
3
Lucasfilms
4
Sogecine

RelacinconelAlgebra
Relacional
PelculaxEstudio
ID_Pelcula
Nombre
1
Laguerradelasgalaxias
1
Laguerradelasgalaxias
1
Laguerradelasgalaxias
1
Laguerradelasgalaxias
2
Lacomunidaddelanillo
2
Lacomunidaddelanillo
2
Lacomunidaddelanillo
2
Lacomunidaddelanillo
3
Maradentro
3
Maradentro
3
Maradentro
3
Maradentro
4
ElviajedeChihiro
4
ElviajedeChihiro
4
ElviajedeChihiro

4
ElviajedeChihiro

Ao ID_Estudio ID_Estudio
Nombre
1977
3
1
Ghibli
1977
3
2
NewLineCinema
1977
3
3
Lucasfilms
1977
3
4
Sogecine
2001
2
1
Ghibli
2001
2
2
NewLineCinema
2001
2
3
Lucasfilms
2001
2
4
Sogecine
2004
4
1
Ghibli
2004
4
2
NewLineCinema
2004
4
3
Lucasfilms
2004
4
4
Sogecine
2001
1
1
Ghibli
2001
1
2
NewLineCinema
2001
1
3
Lucasfilms
2001
1
4
Sogecine

RelacinconelAlgebra
Relacional

LaoperacinReunion(Join)R|><|CSen
SQLseescribe:

Usandolastablasanteriores

SELECT*FROMR,SWHERER.c=S.c
SELECT*Pelcula,EstudioWHERE
Pelicula.ID_Estudio=Estudio.ID_Estudio

RelacinconelAlgebra
Relacional
Pelcula|><|Estudio
ID_Pelcula
Nombre
1 Laguerradelasgalaxias
2 Lacomunidaddelanil o
3
Maradentro
4
ElviajedeChihiro

Ao
1977
2001
2004
2001

ID_Estudio ID_Estudio Nombre


3
3
Lucasfilms
2
2 NewLineCinema
4
4
Sogecine
1
1
Ghibli

RelacinconelAlgebra
Relacional

EloperadorRenombrar()permite
cambiarelnombredelarelacin,para
diferenciaratributosdelmismonombre.
SQLproporcionaunmecanismopara
renombrartantorelacionescomoatributos.
ParaelloutilizalaclusulaAS,quetienela
formasiguiente:

SELECT*nombreantiguoASnombrenuevo

RelacinconelAlgebra
Relacional

LasoperacionesdeSQLUNION,
INTERSECTyEXCEPToperansobre
relacionesycorrespondenalas
operacionesdellgebrarelacional,y
Aligualquelaunin,intersecciny
diferenciadeconjuntosenellgebra
relacional,lasrelacionesqueparticipanen
lasoperacioneshandesercompatibles;
estoes,debentenerelmismoconjuntode

atributos.

RelacinconelAlgebra
Relacional

EjemploSELECTUNIN

Paraencontrartodoslosclientesqueposeen
unprstamo,unacuentaolasdoscosasen
elbanco,seescribir:
(SELECTnom_clienFROMprestatario)
UNION(SELECTnom_clienFROMimpositor)

RelacinconelAlgebra
Relacional
PRESTATARIO
nro_pres
123
321

IMPOSTOR
Nom_cliente
AlejandraGuerra
LuisContreras

Ao ID_Estudio
1977
3
2001
2

Nom_cliente
AlejandraGuerra
LuisContreras
GabrielSoto

nro_cuenta
987
789

Nom_cliente
AlejandraGuerra
GabrielSoto

RelacinconelAlgebra
Relacional

EjemploSELECTINTERSECCIN

Paraencontrartodoslosclientesquetienen
tantounprstamocomounacuentaenel
bancoseescribira:
(SELECTnom_clienFROMprestatario)
INTERSECT(SELECTnom_clienFROM
impositor)

RelacinconelAlgebra
Relacional
PRESTATARIO
nro_pres
123
321

IMPOSTOR
Nom_cliente
AlejandraGuerra
LuisContreras

Ao ID_Estudio
1977 3
2001 2

Nom_cliente
AlejandraGuerra

nro_cuenta
987
789

Nom_cliente
AlejandraGuerra
GabrielSoto

RelacinconelAlgebra
Relacional

EjemploSELECTDIFERENCIA

Paraencontrartodoslosclientesquetienen
cuentaperonotienenningnprstamoenel
bancoseescribira:
(SELECTnom_clienFROMprestatario)
EXCEPT(SELECTnom_clienFROM
impositor)

RelacinconelAlgebra
Relacional
PRESTATARIO
nro_pres
123
321

IMPOSTOR
Nom_cliente
AlejandraGuerra
LuisContreras

Ao ID_Estudio
1977 3
2001 2

Nom_cliente
LuisContreras

nro_cuenta
987
789

Nom_cliente
AlejandraGuerra
GabrielSoto

Resumen

Elmodelodedatosrelacionalsebasa
enunconjuntodetablas.Elusuariodel
sistemadebasesdedatospuede
consultaresastablas,insertarnuevas
tuplas,borrartuplasyactualizar(modificar)
lastuplas.Hayvarioslenguajespara
expresarestasoperaciones

Resumen

Ellgebrarelacionaldefineunconjunto
deoperacionesalgebraicasqueoperan
sobretablasydevuelventablascomo
resultado.Estasoperacionessepueden
combinarparaobtenerexpresionesque
expresanlasconsultasdeseadas.El
lgebradefinelasoperacionesbsicas
usadasenloslenguajesdeconsulta
relacionales

Resumen

SQLincluyevariasconstructorasdel
lenguajeparalasconsultassobrelabase
dedatos.Todaslasoperacionesdel
lgebrarelacionalsepuedenexpresaren
SQL.SQLtambinpermitelaordenacin
delosresultadosdeunaconsultaen
trminosdelosatributos

Referencias

2oCursodeAdministracindeSistemas
Informticos,JorgeSnchez
SistemasdeInformacinII,CarlosCastillo
FundamentosdeBasedeDatos,Abraham
Silberschatz,HenryF.Korth,S.Sudarshan
BasedeDatosModelosyAnalisis,Patricia
RendonV.

También podría gustarte