R1 R2
Nombre Edad Sexo Nombre Edad Sexo
Jesús Flores 20 M Vanessa Collazos 20 F
Eddie Gonzáles 21 M Jesús Flores 20 M
Rocío Capuñay 21 F Karla Jara 21 F
R1 R2
Nombre Edad Sexo Nombre Edad Sexo
Jesús Flores 20 M Vanessa Collazos 20 F
Eddie Gonzáles 21 M Jesús Flores 20 M
Rocío Capuñay 21 F Karla Jara 21 F
R1 R2
Nombre_R1 Edad_R1 Sexo_R1 Nombre_R2 Edad_R2 Sexo_R2
Jesús Flores 20 M Vanessa Collazos 20 F
Eddie Gonzáles 21 M Karla Jara 21 F
R <condición de enlace> ∞ S
Donde <condición de enlace>:
<atributo de R> <operador de comparación> <atributo de S>
• El operador de comparación puede ser <, >, <=, >=, =, <> y depende de los atributos del
dominio.
Operador Enlace (Join) (ii)
• Si la relación R tiene los atributos A1, A2, …, An y la relación S
tiene los atributos B1, B2, …, Bm, y los atributos Ai y Bj tienen el
mismo dominio subyacente, se puede definir una operación de
enlace entre la relación R y la relación S sobre una condición de
enlace entre los atributos Ai y Bj.
• El resultado es otra relación T que contiene todas las tuplas t tales
que t es la concatenación de una tupla r que pertenece a R y una
tupla s que pertenece a S, si es que la condición es verdadera.
Ejemplo: Operador Join
R1 R2
Nombre_R1 Apellidos_R1 Apellidos_R2 Sexo_R2
JANETT BERMEJO RODRIGUEZ SOLAR CONTRERAS F
LUIS CORDOVA GONZALEZ CORDOVA GONZALEZ M
KAREEN SOLAR CONTRERAS BERMEJO RODRIGUEZ F
GUERRERO RUBIO M
R3 = R1 (Apellidos = Apellidos) R2
Nombre_R1 Apellidos_R1 Apellidos_R2 Sexo_R2
JANETT BERMEJO RODRIGUEZ BERMEJO RODRIGUEZ F
LUIS CORDOVA GONZALEZ CORDOVA GONZALEZ M
KAREEN SOLAR CONTRERAS SOLAR CONTRERAS F
• Por definición, el resultado de una operación join debe incluir dos atributos idénticos desde
el punto de vista de sus valores. Si uno de estos atributos es eliminado, el resultado es
denominado natural join.
• Ejemplo:
R1 R2
Nombre Apellidos Apellidos Sexo
JANETT BERMEJO RODRIGUEZ SOLAR CONTRERAS F
LUIS CORDOVA GONZALEZ CORDOVA GONZALEZ M
KAREEN SOLAR CONTRERAS BERMEJO RODRIGUEZ F
GUERRERO RUBIO M
Natural Join
Nombre Apellidos Sexo
JANETT BERMEJO RODRIGUEZ F
LUIS CORDOVA GONZALEZ M
KAREEN SOLAR CONTRERAS F
Operador Enlace (Join) (iii)
• Hay situaciones en las cuales no todas las tuplas de la relación R tienen
una tupla correspondiente en la relacíón S. Por consiguiente aquellas
tuplas no aparecerán en el resultado de una operación de enlace entre R y
S.
• Esto nos lleva a pensar que en algunos casos, puede que sea necesario
tener todas las tuplas en el resultado y para ello es que existe otra forma
de enlace: el outer join (enlace externo).
• Hay tres formas de outer join:
• Left outer join: Donde todas las tuplas de R aparecerán en el resultado.
• Right outer join: Donde todas las tuplas de S aparecerán en el
resultado.
• Full outer join: Donde todas las tuplas de R y S aparecerán en el
resultado.
Ejemplo: Operador Enlace (Join)
R1 R2
Nombre Apellidos Apellidos Sexo
JANETT BERMEJO RODRIGUEZ SOLAR CONTRERAS F
LUIS CORDOVA GONZALEZ CORDOVA GONZALEZ M
KAREEN SOLAR CONTRERAS BERMEJO RODRIGUEZ F
GUERRERO RUBIO M
Alumno Profesor
123-45-6789 CORDOVA GONZALEZ Ingeniería de Sistemas Base de Datos 098-76-5432 CABEL ALFARO Administración Asistente
124-56-7890 SOLAR CONTRERAS Contabilidad Costos y Presupuestos 543-21-0987 RUIZ HONORIO Administración Profesor Principal
876-54-3210 CALDERON VILCHEZ Administración Taller de Creatividad Empresarial 876-54-3210 CALDERON VILCHEZ Administración Asistente
123-45-6789 CORDOVA GONZALEZ Ingeniería de Sistemas Base de Datos NULL NULL NULL NULL
124-56-7890 SOLAR CONTRERAS Contabilidad Costos y Presupuestos NULL NULL NULL NULL
876-54-3210 CALDERON VILCHEZ Administración Taller de Creatividad Empresarial 876-54-3210 CALDERON VILCHEZ Administración Asistente
NULL NULL NULL NULL 543-21-0987 RUIZ HONORIO Administración Profesor Principal
25
Operador División (Division):
R3 = Matrícula ÷ Alumno
Id_Curso
4235
Ejemplo de una operación DIVISION