3 3 1 Modelo Relacinal 2
-
Upload
jorge-castillo -
Category
Documents
-
view
213 -
download
0
description
Transcript of 3 3 1 Modelo Relacinal 2
3. Modelo relacional
3.3.1 Selección • Operación unaria: recibe una relación• La relación resultante es un conjunto de tuplas que satisfacen un predicado dado.• El operador selección es la letra griega sigma minúscula (c)• Sintaxis: σexpresión lógica (Relación)
o Una expresión lógica puede tener…operadores relacionales: <, >, =, ≠, ≥, ≤operadores lógicos: ∧ (y), ∨ (o)
• El resultado de la selección es un subconjunto de la relación involucrada:σexpresión lógica (Relación) ⊆ Relación
• Ejemplo. Seleccionar todos los clientes que no sean de Tala:σCiudad ≠ “Tala” (Cliente)
Número de cliente Nombre Ciudad 00018 Juan Pérez Ameca 00105 José García Ahualulco 00345 Guadalupe López Ameca
3.3.2 Proyección • Operación unaria: recibe una relación• Despliega las columnas deseadas de todas las tuplas de una relación• El operador proyección es la letra griega pi mayúscula (Π)• Sintaxis: Π atributo1,…, atributom (Relación)• El resultado de la proyección es el conjunto de todas las tuplas de la relación,
excluyendo algunos argumentos:∀t = (v1,… vn) ∈ Relación
t’ = (v1,… vm) ∈ Π atributo1,…, atributom (Relación) • Ejemplo. Listar el nombre de todos los clientes:
Πnombre (Cliente)
Nombre Juan Pérez
Pedro González María Jiménez
José García Guadalupe López
3.3.3 Composición • Nos permite combinar los operadores aprovechando el hecho que las entradas y
salidas de cada operador son relaciones
• Ejemplo. Listar el número y nombre de todos los clientes de Ameca:Πno_cliente, nombre (σciudad = “Ameca” (Cliente))
3.3.4 Unión • Operador utilizado: ∪
• La definición de esta operación es semejante a la unión de conjuntos.
Operador binario. Recibe 2 relaciones A, B. Devuelve una relación que contiene todas las tuplas que estén contenidas sólo en A, sólo en B, o en ambas.
• Restricciones para efectuar A ∪ B (relaciones compatibles):
o A y B deben tener la misma aridad: mismo número de atributos o Los atributos k-ésimos de A y B pertenecen al mismo dominio, ∀k.
• Consideremos el siguiente ejemplo. Listar el nombre de todos los alumnos y
maestros que sean de Ameca • Primero, definimos las relaciones Alumno y Maestro
o Alumno = (No_alumno, Nombre, Semestre, Carrera, Ciudad) o Maestro = (No_maestro, Nombre, Nivel, Ciudad)
• Nótese que no podemos efectuar la unión de las relaciones Alumno y Maestro
porque tienen diferente aridad, además de que los atributos semestre de alumno y nivel de Maestro no pertenecen al mismo dominio, de la misma forma que carrera de Alumno y ciudad de Maestro.
• Pero podemos hacer la unión de dos relaciones que contengan, respectivamente,
los nombres de los alumnos y de los maestros que sean de Ameca:
Πnombre (σCiudad = “Ameca” (Alumno)) ∪ Πnombre (σCiudad = “Ameca” (Maestro))
3.3.5 Diferencia • Operador utilizado: –
• La definición de esta operación es semejante a la diferencia de conjuntos.
Operador binario. Recibe 2 relaciones A, B. Devuelve una relación que contiene todas las tuplas que estén contenidas en A pero que no están en B.
• Restricciones para efectuar A – B (relaciones compatibles):
o A y B deben tener la misma aridad: mismo número de atributos o Los atributos k-ésimos de A y B pertenecen al mismo dominio, ∀k.
• Consideremos el siguiente ejemplo. Listar el nombre de todos los alumnos y
maestros que sean de Ameca que no estén en 5º semestre
Πnombre (σCiudad = “Ameca” (Alumno)) – Πnombre (σSemestre = 5 (Alumno))
Número de cliente Nombre 00018 Juan Pérez 00345 Guadalupe López