Ejercicios sql

Solo disponible en BuenasTareas
  • Páginas : 5 (1037 palabras )
  • Descarga(s) : 0
  • Publicado : 20 de junio de 2011
Leer documento completo
Vista previa del texto
EJERCICIOS DE SQL
Un grupo de investigación de una universidad ha diseñado una base de datos (BD) para la gestión de los proyectos de investigación en los que participa.

En esta tabla se almacenarán los distintos planes o programas a los que pueden pertenecer los proyectos de investigación. Para cada plan se almacenará el código del mismo, el nombre completo del plan, y la entidad que lofinancia.

Por ejemplo, un plan podría ser el I+D+I, cuyo nombre completo es Plan Nacional de Investigación Científica, Desarrollo e Innovación Tecnológica, cuya entidad financiadora es el MCYT (Ministerio Ciencia y Tecnología).

En esta tabla se almacenarán los proyectos en los que participan los distintos investigadores. Cada proyecto de investigación estará asociado a un plan. Tendremos elcódigo del proyecto, el código del plan al que pertenece dicho proyecto, el nombre completo del proyecto, la fecha de inicio del mismo y la de finalización. Además se almacenará en esta tabla el presupuesto concedido a cada proyecto.

En esta tabla se almacenará qué investigadores trabajan en qué proyectos. La clave primaria estará formada por CÓDIGO_PROYECTO y DNI_INVESTIGADOR. Un investigador unavez que abandona el proyecto no puede reincorporarse al mismo proyecto posteriormente. También se indicará el periodo en el que un determinado investigador trabaja en un proyecto de investigación por medio de los atributos FECHA_INICIO y FECHA_FIN. El atributo TIPO_PARTICIPACION indicará el papel que juega cada investigador en cada proyecto. Podrá tomar los siguientes valores: investigadorprincipal, investigador a tiempo completo, investigador a tiempo parcial, becario FPI, etc.

En esta tabla se almacenarán los investigadores que participan en los distintos proyectos de investigación. Se almacenará el DNI, el nombre, la ciudad en la que trabaja y su teléfono de contacto.

A continuación, se muestra el grafo relacional de este BD para la gestión de proyectos de investigación.

Sobreesta BD se pide que se realicen las siguientes consultas en álgebra relacional:

A continuación, se plantea una posible solución a las consultas que se plantean. Naturalmente, pueden existir otras alternativas igualmente válidas, incluso en algunos casos se muestran estas alternativas.

Q1: Nombre de los investigadores de Madrid y el nombre de los proyectos en los que trabajan.

ALGEBRARELACIONAL:

Π Nombre. Investigador, NomProyecto. Proyecto (σ (Ciudad. Investigador = “Madrid”) and (DNIInvestigador. Asignado_A = DNIInvestigador. Investigador) and (CodProyecto. Proyecto = CodProyecto. Asignado_A) (Investigador X Asignado_A X Proyecto).

SQL:

SELECT investigador.nombre, proyecto.nomproyecto
FROM Investigador , Asignado_A , Proyecto
WHERE Investigador.Ciudad = ‘Madrid’ ANDAsignado_A.DNIInvestigador = Investigador.DNIInvestigador AND Proyecto.CodProyecto = Asignado_A .CodProyecto;

Q2: Nombre del investigador responsable y fecha de inicio del proyecto llamado “NEPTUNO”.

ALGEBRA RELACIONAL:

Π Nombre. Investigador, FechaInicio. Proyecto, NomProyecto. Proyecto (σ (NomProyecto. Proyecto = “Neptuno”) and (DNIInvestigador. Asignado_A = DNIInvestigador.Investigador) and (CodProyecto. Proyecto = CodProyecto. Asignado_A) (Investigador X Asignado_A X Proyecto).

SQL:

SELECT investigador.nombre, proyecto.fechainicio, proyecto.nombreproyecto
FROM Investigador , Asignado_A , Proyecto
WHERE Proyecto .NomProyecto.= ‘Neptuno’ AND Asignado_A .DNIInvestigador = Investigador .DNIInvestigador AND Proyecto.CodProyecto = Asignado_A. CodProyecto;

Q3: Nombre delos proyectos en los que trabaja algún investigador de Soria.

ALGEBRA RELACIONAL:

Π NomProyecto. Proyecto (σ (Ciudad. Investigador = “Soria”) and (DNIInvestigador. Asignado_A = DNIInvestigador. Investigador) and (CodProyecto. Proyecto = CodProyecto. Asignado_A) (Investigador X Asignado_A X Proyecto).

SQL:

SELECT proyecto.nomproyecto
FROM Investigador , Asignado_A , Proyecto...
tracking img