Ejercicios y Soluciones Algebra Relacional

April 29, 2017 | Author: Ipia Kuetia Leider | Category: N/A
Share Embed Donate


Short Description

Descripción: ejercicios resueltos de base de datos en tema de ALGEBRA RELACIONAL...

Description

EJERCICIOS ALGEBRA RELACIONAL

MIYER ARNULFO CUETIA IPIA LEIDER IPIA CUETIA APRENDICES

CENTRO DE COMERCIOS Y SERVICIOS ANÁLISIS Y DESARROLLO DE SISTEMAS DE FORMACIÓN CAUCA POPAYÁN 2015

EJERCICIOS ALGEBRA RELACIONAL

MIYER ARNULFO CUETIA IPIA LEIDER IPIA CUETIA APRENDICES

ALGEBRA RELACIONAL

LEONARDO JAVIER BASTIDAS MORENO INSTRUCTOR

CENTRO DE COMERCIOS Y SERVICIOS SENA ANÁLISIS Y DESARROLLO DE SISTEMAS DE FORMACIÓN CAUCA POPAYÁN 2015

Ejercicio 1

SOLUCION

π

nombre, apellido(σ Asignatura.CodA = Notas.CodA and CodA=1 and

CodA=2 and CodA=3( Asignatura, Notas, Alumnos))

Nombre

Apellido

Ana Juan

Pérez Gómez García García

Ejercicio 2

SOLUCION

π

nombre, apellido(σ Asignatura.CodA = Notas.CodA and CodA=1 and

CodA=2 and CodA=3( Asignatura, Notas, Alumnos))

Nombre

Apellido

Ana Juan

Pérez Gómez García García

Ejercicio 3

SOLUCION

π

Nombre, Apellido, NombreA, Nota(σ Asignatura.CodA = Notas.CodA and

Notas.nota>5 ( Asignatura, Notas, Alumnos))

Nombre Apellido

NombreA

Nota

Ana Ana Rosa Juan

Programación Ingles Programación Programación

8 7 6 9

Pérez Gómez Pérez Gómez López López García Gracía

Si se hace tal como se plantea el enunciado la tabla quedaría:

π

Nombre, Apellido, (σ Asignatura.CodA = Notas.CodA and Notas.nota>5 (

Asignatura, Notas, Alumnos))

Nombre Apellido Ana Ana Rosa Juan

Pérez Gómez Pérez Gómez López López García Gracía

ALGEBRA RELACIONAL: EJEMPLO

π Se pide dar soluciones algebraicas a las siguientes consultas: 1. Obtener todos los datos de todas las clases.

π

C#, Piso, Bloques (Clases)

Clases C# Piso Bloque C1 C2 C3

1 1 2

1 2 1

2. Obtener todos los datos de todas las clases ubicadas en el primer piso.

π

C#, Piso, Bloque (σ Piso = 1 (Clases))

C# Piso Bloque C1 1 1

C2

1

Obtener los profesores que asisten a la clase “C1”.

3.

π

2

Nombre, C# (σ Asistencia.C# = C1 (Profesor*Asistencia*Clases))

Nomp

C#

Raúl Simón Adrián Rosa

C1 C1 C1 C1

4. Obtener el valor de PISO Y BLOQUE para las clases a las que asiste el profesor “P1”.

π

P#, Piso, Bloque (σ P# = P1 (Asistencia*Clases))

P# Piso Bloque P1 P1

1 2 5.

1 1

Obtener los valor de P# para los profesores que asisten a la clase “C1” impartiendo la asignatura de “FISICA”.

π P#, Nomp, Noma (σ C# = C1 and Noma = FISICA (Asignatura*Asistencia*Profesor)) P# Nomp Noma P1

Raúl

FISICA

6. Obtener los valores de “P#” para los profesores que asisten a la clase “C1” o “C2”.

π

P#, Nomp, (σ C# = C1 or C# = C2 (Asistencia*Profesor))

P# Nomp P1 P2 P3 P4

Raul Simon Rosa Adrian 7. Obtener los valores de “P#” para los profesores que asisten a las clases “C1” y “C2”.

π P#, Nomp, Clases(σ C# = C1 (Asistencia*Profesor)) INTERSECT π P#, Nomp, Clases(σ C# = C2 (Asistencia*Profesor)) P# Nomp Noma P1 P2 P3 P4 P3 P4

Raúl Simón Rosa Adrián Rosa Adrián

C1 C1 C1 C1 C2 C2

8. Obtener los nombres de los profesores que asisten solo a las clases del BLOQUE 1.

π Nomp, (σ Bloque = 1 (Profesor *Asistencia*Clases)) Nomp Raúl Simón Rosa Adrián

9. Obtener las clases en las que se imparten todas las asignaturas.

π

C# ( (ASISTENCIA) ÷

π A# (ASIGNATURA))

C# C1 ALGEBRA RELACIONAL 1. Sean las relaciones siguientes: EDITORIALES (E#, NAME, CIUDAD) LIBROS (L#, TITULO, AUTOR, AÑO) PAPALERIAS (P#, NOMP, CIUDAD) ELP (E#, L#, P#, CANTIDAD) EDITORIALES E# NAME E1 Aruna E2 Butrón E3 Cascada E4 Baxter

CIUDAD Madrid Córdoba Tú chin Lorica

PAPELERIA P# NOMP P1 MegaPapel P2 UltraPapel P3 PlusPapel P4 MasPapel

LIBRO L# TITULO L1 Noche 10 L2 Kamehasutra L3 Ninpha L4 Il Mio Reino

AUTOR Gerom Tokyotan Khunvyx Luggy

AÑO 1978 1980 2001 1978

ELP CIUDAD MADRID_C QUITO_C BOGOTA_C MONGOLIA_c

E# E1 E2 E3 E4

L# L1 L3 L2 L4

P# P3 P2 P4 P1

CANTIDAD 24 12 8 19

Se pide escribir en álgebra relacional las respuestas siguientes: a) Obtener los nombres de las papelerías abastecidas por alguna editorial de “Madrid”.

π P#, NOMP,(σ EDITORIAL.CIUDAD = Madrid (EDITORIALES* PAPELERIA)) P# P3

NOMP PlusPapel

b) Obtener los valores de E# para las editoriales que suministran a las papelerías P1 y P3 libros publicados en el año 1978.

π E#, NAME, P#, NOMP, L#, TITULO, AÑO (σ LIBRO.AÑO = 1978 and PAPELERIA.P# = P1 and P3 (LIBRO*PAPELERIA*EDITORIALES))

E# NAME P# NOMP L# TITULO E1 Aruna P3 PlusPapel L1 Noche 10 E4 Baxter P1 MegaPapel L4 II Mio Reino

AÑO

1978 1978

c) Obtener los valores de P# de las papelería abastecidas completamente por la editorial E1.

π P#, NOMP, CIUDAD (σ ELP.E# = E1 (PAPELERIA*ELP)) P# NOMP CIUDAD P3

PlusPapel BOGOTA

d) Obtener los valores de L# para los libros suministrados para todas las papelerías que no sean de “Madrid”.

π L#, TITULO, AUTOR, AÑO (σ EDITORIALES.E# = E2 and E#= E3 and E#= E4 (LIBRO*PAPELERIA*EDITORIALES)) L# TITULO

AUTOR

AÑO

L2 L3

Tokyotan Khunvyx

1980 2001

Kamehasutra Ninpha

L4

Il Mio Reino

Luggy

1978

2. Dada la base de datos compuesta por las siguientes relaciones: PROGRAMAS (P#, MEMORIAS, S.O, DISTRIBUIDOR) USUARIOS (U#, EDAD, SEXO) ORDENADORES (O#, MODELO, S.O, CAPACIDAD) USOS (U#, P#, 0#, TIEMPO) PROGRAMAS P# MEMORIA P1 1DB P5 2GB P8 3GB P5 4GB

S.O S.O1 S.O2 S.O3 SO.4

DISTRIBUIDOR D1 D2 D2 D4

USUARIOS

ORDENADORES O# MODELO O1 M1 O2 M2 O3 M3 O4 M4

S.O S.O1 S.O2 S.O3 S.O4

CAPACIDAD 320GB 500GB 320GB 500GB

U# EDAD U1 30 U2 45 U3 38 U4 20 USOS U# O# U1 O1 U2 O2 U5 O3 U4 O4

SEXO M F M F P# P1 P2 P8 P5

TIEMPO 3H 5H 3H 6H

Se pide expresar en términos de álgebra relacional la secuencia de operaciones necesaria para efectuar las siguientes consultas a la Base de Datos: a) Obtener los usuarios (U#) que usan al menos todos los programas del distribuidor 'D1'.

π U#, (σ DISTRIBUIDOR = D1 (PROGRAMAS*USUARIOS*)) U# U1 b) Obtener los programas (P#) que sólo son usados por el usuario 'U5'. c)

π P# (σ

U# = U5 (PROGRAMAS*USOS))

P#

MEMORIA

S.O

DISTRIBUIDOR

P8

3GB

S.O3

D2

c) Obtener distribuidores que venden los programas 'P5' y 'P8'.

π DISTRIBUIDOR (σ PROGRAMAS.P# = P5 and P# = P8 (PROGRAMAS)) DISTRIBUIDOR

D2 D4

d) Obtener los modelos de los ordenadores que son usados por personas mayores de 30 años durante más de 3 horas.

π MODELO (σ USUARIOS.EDAD > 30 and USOS.TIMEPO > 3H (ORDENADORES*USOS*USUARIOS)) 3. Sean las siguientes instrucciones: SOCIO (AFICIONADO, VIDEOCLUB) GUSTA (AFICIONADO, PELICULA) VIDEOTECA (VIDEOCLUB, PELICULA) SOCIO

AFICIONADO

VIDEOCLUB

JOSE PEREZ JHON ANAYA RAFA NADAL CARLOS PUYOL

CARANTAS EL_MEJOR NULL EL_PASPI

GUSTA AFICIONADO JOSE PEREZ JHON ANAYA RAFA NADAL CARLOS PUYOL

PELICULA DRACULA BARBIE BRUJAS BARNIE

VIDEOTECA

VIDEOCLUB PELICULA CARANTAS EL_MEJOR SUPERMAX EL_PASPI

DRACULA BARBIE BRUJAS BARNIE

Se pide escribir en álgebra relacional las sentencias necesarias para responder a las preguntas siguientes: a) Películas que le gustan al aficionado José Pérez.

π PELICULA (σ PELICULA DRACULA

AFICIONADO = JOSE PEREZ (GUSTA))

b) Videoclubes que disponen de alguna película que le guste al aficionado José Pérez. c)

π VIDEOCLUB, PELICULA (σ

AFICIONADO = JOSE PEREZ (GUSTA))

VIDEOCLUB PELICULA CARANTAS

DRACULA

d) Aficionados que son socios al menos de un videoclub que dispone de alguna película de su gusto. e)

π AFICIONADO, VIDEOCLUB, PELICULA(SOCIO, GUSTA)

AFICIONADO

VIDEOCLUB

PELICULA

JOSE PEREZ JHON ANAYA CARLOS PUYOL

CARANTAS EL_MEJOR E_PASPI

DRACULA BARBIE BARNIE

f) Aficionados que no son socios de ningún videoclub donde tengan alguna película de su gusto.

π AFICIONADO, PELICULA (σ (SOCIO*GUSTA))

SOCIO.VIDEOCLUB = NULL

AFICIONADO

PELICULA

RAFA NADAL

BRUJAS

4. Dada la base de datos formada por las siguientes tablas: MAQUINAS (M#, TIPO, MATRICULA, PRECIO_HORA) FINCAS (F#, NOMBRE, EXTENSION) TRABAJADOR (T#, NOMBRE, DIRECCION) PARTES (T#, M#, F#, FECHA, TIPO_FAENA, TIEMPO) MAQUINAS M# TIPO M1 1 M2 2 M3 3 M4 4 M5 5

MATRICULA MA1 MA2 MA3 MA4 MA5

TRABAJADOR F# NOMBRE T1 Abstrubal T2 Oscar T3 Hermes T4 Julián T5 Sebastián PARTES T# M# T1 M1 T1 M2 T2 M1 T2 M4 T3 M3 T3 M5 T4 M3 T4 M3 T5 M1

F# F1 F2 F2 F3 F4 F5 F3 F4 F5

PRECIO_HORA 1000 2000 3000 4000 5000

FINCAS F# NOMBRE F1 Abeja F2 Becerra F3 Caimanera F4 Diosita F5 La maría

DIRECCION Uno1 Dos2 Tres3 Cuatro4 Cinco5

FECHA 2008/7/24 2008/7/24 2008/7/28 2008/7/08 2008/7/20 2008/7/16 2008/8/10 2008/10/21 2008/10/16

TIPO_FAENA TIPO1 null TIPO1 TIPO1 TIPO2 TIPO3 TIPO2 TIPO2 TIPO3

TIEMPO 8 0 7 9 5 3 6 6 1

Se pide dar soluciones algebraicas a las siguientes consultas: a) Obtener todos los T# que usan todas las máquinas del tipo 1.

π T#(σ

MAQUINAS.M# = M1(MAQUINAS*PARTES))

EXTENSION 100 200 300 400 500

b) Obtener todos los F# para aquellas fincas en las que han realizado trabajos las máquinas M1 y M3

π F#, NOMBRE, M# (σ (MAQUINA*FINCAS))

MAQUINAS.M# = M1 and MAQUINAS.M# = M3

F#

NOMBRE

M#

F1 F2 F3 F4 F5

Abeja Becerra Caimanera Diosita La maría

M1 M1 M3 M3 M1

c) Obtener el valor de M# para aquellas máquinas que no han sido utilizadas nunca en ningún trabajo.

π M# (σ

PARTES.TIPO_FAENA = NULL (PARTES*MAQUINAS))

M# M2 d) Obtener todos los nombres de fincas en las que se ha trabajado más de 5 horas con máquinas cuyo precio por hora sea superior a 2000 pts.

π F#, NOMBRE, M#, TIEMPO, PRECIO_HORA (σ PARTES.TIEMPO > 5 and MAQUINAS.PRECIO_HORA > 2000 (MAQUINA*FINCAS*PARTES)) F# NOMBRE

M# TIEMPO PRECIO_HORA

F3 Caimanera F3 Caimanera F4 Diosita

M4 M3 M3

9 6 6

4000 3000 3000

5. Dada la base de datos compuesta por las siguientes tablas: ALUMNOS (A#, NOMBRE, GRUPO) PRÁCTICAS (P#, CURSO, FECHA) ENTREGA (A#, P#, NOTA) ALUMNOS A# NOMBRE GRUPO A1 JUAN BD-10 A2 PEDRO BD-09 A3 LUIS BD-11 A4 RAFAEL BD-11

PRÁCTICAS P# CURSO P1 C3 P2 C3 P3 C2 P4 C4

FECHA 03-02-11 06-10-11 03-02-11 06-10-11

ENTREGA A# P# NOTA A1 P1 3.5 A2 P2 0.0 A3 P3 5.0 A4 P4 4.0 Se pide dar solución en álgebra relacional a las consultas: a) Obtener los nombres de los alumnos que han aprobado todas las prácticas de tercer curso. Obtener los nombres de los alumnos que han entregado todas las prácticas de tercer curso.

π NOMBRE, NOTA (σ NOTA > 3.0 and CUSRO = C3 (ALUMNOS*PRACTICAS*ENTREGA)) NOMBRE

NOTA

JUAN

3.5

b) Obtener los alumnos que han entregado prácticas de segundo y tercer curso.

π NOMBRE, NOTA (σ NOTA > 3.0 and CUSRO = C3 (ALUMNOS*PRACTICAS*ENTREGA)) NOMBRE NOTA JUAN LUIS

and CURSO = C2

3.5 5.0

c) Obtener los alumnos que sólo han entregado prácticas de segundo curso.

π NOMBRE, NOTA (σ NOTA > 3.0 and CUSRO = C2 (ALUMNOS*PRACTICAS*ENTREGA)) NOMBRE NOTA LUIS

5.0

d) Obtener los alumnos que han entregado prácticas de segundo curso y pertenecen al grupo 'BD-11'.

π NOMBRE, NOTA, GRUPO (σ CUSRO = C2 and GRUPO = BD-11 (ALUMNOS*PRACTICAS*ENTREGA)) NOMBRE

NOTA

GRUPO

LUIS

5.0

BD-11

e) Obtener el nombre de los alumnos que no han suspendido ninguna práctica de las que han entregado.

π NOMBRE, NOTA (σ

NOTAS > 3.0 (ALUMNOS*ENTREGA))

NOMBRE

NOTA

JUAN LUIS RAFAEL

3.5 5.0 4.0

6. La Federación Internacional de Ciclismo Profesional desea tener una BDR con las siguientes tablas: EQUIPOS (E#, NOMBRE, PAIS) CICLISTAS (C#, NOMBREC, E#) COMPETICIONES (M#, NOMBRECO, PAIS, DURACION) CLASIFICACION (M#, C#, PUESTO) EQUIPOS E# NOMBRE E1 E2 E3 E4

ATLETICA BALSA CALSETO DEAZ

COMPETICIONES M# NOMBRECO M1 Il Giro M2 LaVuelta M3 Round M4 Tour

PAIS ARGENTINA BRASIL COLOMBIA ESPAÑA

PAISCO Italia España EEUU Francia

CLASIFICACIONES M# C# PUESTO M1 C3 1 M1 C1 2 M1 C4 3 M1 C2 4 M2 C4 1 M2 C3 2 M2 C2 3 M3 C2 1 M3 C4 2 M3 C3 3 M4 C2 1 M4 C3 2 M4 C4 3

CICLISTAS C# NOMBREC C1 ANDRES C2 JOAQUIN C3 SIMON C4 PIERE DURACION 12 15 16 20

E# E2 E4 E3 E1

Se pide escribir las sentencias necesarias en álgebra relacional para: a) Obtener los ciclistas que sólo han participado en competiciones de duración inferior a 15 días.

π

C#, NOMBREC (σ DURACION< 15 ( COMPETICIONES*CICLISTAS))

C# NOMBREC C1 C2 C3 C4

ANDRES JOAQUIN SIMON PIERE b) Obtener los ciclistas de equipos españoles que han competido en todas las competiciones de España

π

(σ EQUIPOS.PAIS = ESPAÑA and COMPETICIONES.PAISCO = España ( COMPETICIONES*CICLISTAS*EQUIPOS)) C# NOMBREC E# PAIS C2

C#, NOMBREC, PAIS, E#,

JOAQUIN

E4

ESPAÑA

c) Obtener los ciclistas que han obtenido un primer y un segundo puestos en competiciones con una duración inferior a 15 días.

π

(σ CLASIFICACIONES.PUESTO = 1 and puesto = 2 and COMPETICIONES < 15 ( COMPETICIONES*CICLISTAS)) C# C1 C3

C#, NOMBREC, PUESTO, DURACION

NOMBREC ANDRES

SIMON

PUESTO 2 1

DURACION 12 12

7. Dadas las tablas siguientes: CONDUCTOR (C#, DNI, NOMBREC) AGENTE (A#, NOMBREA, RANGO) INFRACCION (I#, DESCRIP, IMPORTE) DENUNCIA (C#, A#, I#, FECHA, PAGADA) CONDUCTOR C# DNI NOMBREC C1 000 CANELA C2 001 JHON C3 010 RUBEN C4 011 LEYDER C5 111 FLOR

INFRACCION I# DESCRIP I1 BORRACHERA I2 ESTACIONAMIENTO I3 BORRACHERA I4 ESTACIONAMIENTO I5 BORRACHERA

AGENTE A#

NOMBREA

RANGO

A1 A2 A3 A4 A5

ANDRES PEDRO MARCOS TOREDO CARLOS

OFICIAL PATRULLERO PATRULLERO PATRULLERO PATRULLERO

DENUNCIA IMPORTE 10000 80000 7000 5000 9500

C# C1 C2 C3 C4 C5

A# A1 A2 A3 A4 A5

I# I1 I2 I3 I4 I5

FECHA 30-07-11 30-07-11 12-07-11 30-07-11 09-07-11

PAGADA S N S N S

Se pide escribir en álgebra relacional las sentencias necesarias para: a) Obtener el nombre de aquellos conductores que hayan sido denunciados por todas las infracciones inferiores a 10000 Ptas.

π

NOMBREC, C# (σ IMPORTE
View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF