3 3 1 Modelo Relacinal 2

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: Π atributo 1 ,…, atributo m (Relación) El resultado de la proyección es el conjunto de todas las tuplas de la relación, excluyendo algunos argumentos: t = (v 1 ,… v n ) Relación t’ = (v 1 ,… v m ) Π atributo 1 ,…, atributo m (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))

description

SBDI

Transcript of 3 3 1 Modelo Relacinal 2

Page 1: 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))

Page 2: 3 3 1 Modelo Relacinal 2

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