SlideShare una empresa de Scribd logo
EJERCICIOS DE SQL




        IVÁN ANDRÉS SUAREZ




UNIDAD CENTRAL DEL VALLE DEL CAUCA

      FACULTAD DE INGENIERÍA

 PROGRAMA INGENIERÍA DE SISTEMAS

      TULUÁ, ABRIL 27 DE 2009
EJERCICIOS DE SQL




        IVÁN ANDRÉS SUAREZ




        Presentado al ingeniero:

            Edgar Sandoval

             Ing. Sistemas




UNIDAD CENTRAL DEL VALLE DEL CAUCA

      FACULTAD DE INGENIERÍA

 PROGRAMA INGENIERÍA DE SISTEMAS

      TULUÁ, ABRIL 27 DE 2009
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 lo financia.

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 el
có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 una vez 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:
investigador principal, 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.




Sobre esta 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.

ALGEBRA RELACIONAL:

Π 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‟ AND Asignado_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 de los 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
WHERE Investigador .Ciudad = „Soria‟ AND Asignado_A.DNIInvestigador =
Investigador. DNIInvestigador AND Proyecto.CodProyecto = Asignado_A
.CodProyecto;
Q4: Nombre y teléfono de los investigadores principales que trabajen en proyectos
cuyo presupuesto sea inferior a 5000 EUR.

ALGEBRA RELACIONAL:


Π NomInvestigador. Investigador, Telefono. Investigador (σ (Presupuesto. Proyecto <
5000) and (DNIInvestigador. Asignado_A = DNIInvestigador. Investigador) and
(CodProyecto. Proyecto = CodProyecto. Asignado_A) (Investigador X Asignado_A X
Proyecto).

SQL:

SELECT Investigador. NomInvestigador, Investigador .Telefono
FROM Investigador , Asignado_A , Proyecto
WHERE Proyecto .Presupuesto < 5000 AND Asignado_A.DNIInvestigador =
Investigador. DNIInvestigador AND Proyecto.CodProyecto = Asignado_A
.CodProyecto;


Q5: Nombre de los proyectos que hayan comenzado este año y que pertenezcan al
plan, cuyo código sea “PEUR”.

ALGEBRA RELACIONAL:


Π NomProyecto. Proyecto (σ (FechaInicio. Proyecto = 2009) and (CodPlan. Plan =
“PEUR”) and (CodPlan. Plan = CodPlan. Proyecto) (Proyecto X Plan).

SQL:

SELECT proyecto.nomproyecto
FROM Proyecto, Plan
WHERE Proyecto.FechaInicio = 2009 AND Plan .CodPlan = “PEUR” AND
Plan.CodPlan = Proyecto.CodPlan;
Q6: Nombre de los investigadores principales de los proyectos cuya entidad
financiadora sea la “CICYT”.

ALGEBRA RELACIONAL:


Π NomInvestigador. Investigador (σ (EntFinanciera. Plan = “CICYT”) and
(DNIInvestigador. Asignado_A = DNIInvestigador. Investigador) and (CodProyecto.
Proyecto = CodProyecto. Asignado_A) and (CodPlan. Proyecto = CodPlan. Plan)
(Investigador X Asignado_A X Proyecto X Plan).

SQL:

SELECT Investigador.NomInvestigador
FROM Investigador, Asignado_A, Proyecto, Plan
WHERE Plan.EntFinanciera = „CICYT‟ AND Asignado_A.DNIInvestigador =
Investigador. DNIInvestigador AND Proyecto.CodProyecto = Asignado_A
.CodProyecto AND Proyecto.CodPlan = Plan.CodPlan;

Q7: Nombre de los planes a los que pertenecen los proyectos con un presupuesto
superior a 10000 EUR pero que cuyo investigador principal no sea ni de Madrid ni
de Barcelona.

ALGEBRA RELACIONAL:

Π NomPlan. Plan (σ (Presupuesto. Proyecto > 10000) and (Ciudad. Investigador = <>
”Madrid”) and (Ciudad. Investigador = <> ”Barcelona”) and (DNIInvestigador.
Asignado_A = DNIInvestigador. Investigador) and (CodProyecto. Proyecto =
CodProyecto. Asignado_A) and (CodPlan. Proyecto = CodPlan. Plan) (Investigador X
Asignado_A X Proyecto X Plan).

SQL:

SELECT plan.nomplan
FROM Investigador, Asignado_A, Proyecto, Plan
WHERE Proyecto.Presupuesto > 10000 AND Investigador.Ciudad = <> ‟Madrid‟
AND Investigador.Ciudad = <> ‟Barcelona‟ AND Asignado_A.DNIInvestigador =
Investigador. DNIInvestigador AND Proyecto.CodProyecto = Asignado_A
.CodProyecto AND Proyecto.CodPlan = Plan.CodPlan;
Q8: Nombre de aquellos investigadores que trabajan en todos los proyectos de
investigación.

ALGEBRA RELACIONAL:


Π NomInvestigador. Investigador, NomProyecto. Proyecto (DNIInvestigador.
Asignado_A = DNIInvestigador. Investigador) and (CodProyecto. Proyecto =
CodProyecto. Asignado_A) (Investigador X Asignado_A X Proyecto).

SQL:

SELECT Investigador.NomInvestigador, Proyecto.NomProyecto
FROM Investigador, Asignado_A, Proyecto
WHERE Asignado_A.DNIInvestigador = Investigador. DNIInvestigador            AND
Proyecto.CodProyecto = Asignado_A .CodProyecto;


Q9: Obtener el nombre de los proyectos cuyo investigador principal es de La
Coruña y que tienen un presupuesto concedido superior a todos los proyectos
financiados por el plan quot;CICYTquot;.

Π NomProyecto. Proyecto (σ (Ciudad. Investigador = “Coruña”) and (Presupuesto.
Proyecto > (Presupuesto. Proyecto = “CICYT”)) and (DNIInvestigador. Asignado_A =
DNIInvestigador. Investigador) and (CodProyecto. Proyecto = CodProyecto.
Asignado_A) and (CodPlan. Proyecto = CodPlan. Plan) (Investigador X Asignado_A X
Proyecto X Plan).

Q10: Obtener el nombre de los investigadores que participan en proyectos que
tienen un presupuesto superior o igual al proyecto con nombre quot;FOLREquot;.

Π NomInvestigador. Investigador (σ (Presupuesto. Proyecto > = (Presupuesto.
Proyecto = “FOLRE”)) and (DNIInvestigador. Asignado_A = DNIInvestigador.
Investigador) and (CodProyecto. Proyecto = CodProyecto. Asignado_A) and (CodPlan.
Proyecto = CodPlan. Plan) (Investigador X Asignado_A X Proyecto X Plan).
EJERCICIOS DE SQLl

Más contenido relacionado

La actualidad más candente

Objeto Statement
Objeto StatementObjeto Statement
Objeto Statement
carla98_lisbet
 
Clases y objetos en Java
Clases y objetos en JavaClases y objetos en Java
Clases y objetos en Java
Daniel Gomez Jaramillo
 
Programacion Orientada a Objetos en python
Programacion Orientada a Objetos en pythonProgramacion Orientada a Objetos en python
Programacion Orientada a Objetos en python
wozgeass
 
Taller de Base de Datos - Unidad 6 SQL procedural
Taller de Base de Datos - Unidad 6 SQL proceduralTaller de Base de Datos - Unidad 6 SQL procedural
Taller de Base de Datos - Unidad 6 SQL procedural
José Antonio Sandoval Acosta
 
Clases Genéricas en Java
Clases Genéricas en JavaClases Genéricas en Java
Clases Genéricas en Java
Alejandro Colomer Everett
 
Programacion orientada a objetos Unidad 1-intro al paradigma poo
Programacion orientada a objetos Unidad 1-intro al paradigma pooProgramacion orientada a objetos Unidad 1-intro al paradigma poo
Programacion orientada a objetos Unidad 1-intro al paradigma poo
José Antonio Sandoval Acosta
 
Estructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busquedaEstructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busqueda
José Antonio Sandoval Acosta
 
Algoritmos de busqueda
Algoritmos de busquedaAlgoritmos de busqueda
Algoritmos de busqueda
Juan Navarro
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1
Osiris Mirerus
 
Vistas
VistasVistas
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
Cesar David Fernandez Grueso
 
Diagrama de clases
Diagrama de clasesDiagrama de clases
Diagrama de clases
jmachado614
 
Programación Orientada a Objetos - Unidad 5 Excepciones
Programación Orientada a Objetos - Unidad 5 ExcepcionesProgramación Orientada a Objetos - Unidad 5 Excepciones
Programación Orientada a Objetos - Unidad 5 Excepciones
José Antonio Sandoval Acosta
 
Abstraccion de datos
Abstraccion de datosAbstraccion de datos
Abstraccion de datos
DIOSANEGRA
 
encapsulamiento
encapsulamientoencapsulamiento
encapsulamiento
zeta2015
 
Java colecciones
Java coleccionesJava colecciones
Java colecciones
Renny Batista
 
Trigger
TriggerTrigger
Programación Orientada a Objetos - Unidad 2: clases y objetos
Programación Orientada a Objetos - Unidad 2: clases y objetosProgramación Orientada a Objetos - Unidad 2: clases y objetos
Programación Orientada a Objetos - Unidad 2: clases y objetos
José Antonio Sandoval Acosta
 
6 Curso de POO en Java - clases y objetos
6  Curso de POO en Java - clases y objetos6  Curso de POO en Java - clases y objetos
6 Curso de POO en Java - clases y objetos
Clara Patricia Avella Ibañez
 
Pilas y colas
Pilas y colasPilas y colas
Pilas y colas
arrietaevelio
 

La actualidad más candente (20)

Objeto Statement
Objeto StatementObjeto Statement
Objeto Statement
 
Clases y objetos en Java
Clases y objetos en JavaClases y objetos en Java
Clases y objetos en Java
 
Programacion Orientada a Objetos en python
Programacion Orientada a Objetos en pythonProgramacion Orientada a Objetos en python
Programacion Orientada a Objetos en python
 
Taller de Base de Datos - Unidad 6 SQL procedural
Taller de Base de Datos - Unidad 6 SQL proceduralTaller de Base de Datos - Unidad 6 SQL procedural
Taller de Base de Datos - Unidad 6 SQL procedural
 
Clases Genéricas en Java
Clases Genéricas en JavaClases Genéricas en Java
Clases Genéricas en Java
 
Programacion orientada a objetos Unidad 1-intro al paradigma poo
Programacion orientada a objetos Unidad 1-intro al paradigma pooProgramacion orientada a objetos Unidad 1-intro al paradigma poo
Programacion orientada a objetos Unidad 1-intro al paradigma poo
 
Estructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busquedaEstructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busqueda
 
Algoritmos de busqueda
Algoritmos de busquedaAlgoritmos de busqueda
Algoritmos de busqueda
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1
 
Vistas
VistasVistas
Vistas
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
 
Diagrama de clases
Diagrama de clasesDiagrama de clases
Diagrama de clases
 
Programación Orientada a Objetos - Unidad 5 Excepciones
Programación Orientada a Objetos - Unidad 5 ExcepcionesProgramación Orientada a Objetos - Unidad 5 Excepciones
Programación Orientada a Objetos - Unidad 5 Excepciones
 
Abstraccion de datos
Abstraccion de datosAbstraccion de datos
Abstraccion de datos
 
encapsulamiento
encapsulamientoencapsulamiento
encapsulamiento
 
Java colecciones
Java coleccionesJava colecciones
Java colecciones
 
Trigger
TriggerTrigger
Trigger
 
Programación Orientada a Objetos - Unidad 2: clases y objetos
Programación Orientada a Objetos - Unidad 2: clases y objetosProgramación Orientada a Objetos - Unidad 2: clases y objetos
Programación Orientada a Objetos - Unidad 2: clases y objetos
 
6 Curso de POO en Java - clases y objetos
6  Curso de POO en Java - clases y objetos6  Curso de POO en Java - clases y objetos
6 Curso de POO en Java - clases y objetos
 
Pilas y colas
Pilas y colasPilas y colas
Pilas y colas
 

Destacado

Comandos SQL
Comandos SQLComandos SQL
Comandos SQL
Erwin Fischer
 
Comandos básicos para bases de datos mysql y workbench
Comandos básicos para bases de datos mysql y workbenchComandos básicos para bases de datos mysql y workbench
Comandos básicos para bases de datos mysql y workbench
Robedgar MX
 
Manual workbench
Manual workbenchManual workbench
Tipos de datos en MySQL Workbench
Tipos de datos en  MySQL  WorkbenchTipos de datos en  MySQL  Workbench
Tipos de datos en MySQL Workbench
Jair Ospino Ardila
 
Guía rápida de MySQL Server 5.5 y Workbench 5.2
Guía rápida de MySQL Server 5.5 y Workbench 5.2Guía rápida de MySQL Server 5.5 y Workbench 5.2
Guía rápida de MySQL Server 5.5 y Workbench 5.2
andermijan
 
Crear conexion a servidor en MySQL Workbench
Crear conexion a servidor en  MySQL WorkbenchCrear conexion a servidor en  MySQL Workbench
Crear conexion a servidor en MySQL Workbench
Jair Ospino Ardila
 
Comandos básicos mysql
Comandos básicos mysqlComandos básicos mysql
Comandos básicos mysql
Carmen Rios Zapata
 
Comandos utilizados en sql
Comandos utilizados en sqlComandos utilizados en sql
Comandos utilizados en sql
Byron Eras
 
Creación de tablas y relaciones en mysql workbench
Creación de tablas y relaciones en mysql workbenchCreación de tablas y relaciones en mysql workbench
Creación de tablas y relaciones en mysql workbench
Jair Ospino Ardila
 
Crear y Eliminar Bases de datos en MySQL Workbench
Crear y Eliminar  Bases de datos en MySQL WorkbenchCrear y Eliminar  Bases de datos en MySQL Workbench
Crear y Eliminar Bases de datos en MySQL Workbench
Jair Ospino Ardila
 
Ejercicios De Sql (actualizado)
Ejercicios De Sql (actualizado)Ejercicios De Sql (actualizado)
Ejercicios De Sql (actualizado)
capver digital
 
8.ejercicios SQL access
8.ejercicios SQL access8.ejercicios SQL access
8.ejercicios SQL access
Marcelo Herrera
 
Consultas en sql básico
Consultas en sql básicoConsultas en sql básico
Consultas en sql básico
Cristian Salazar C.
 
Ejercicios resueltos de sql
Ejercicios resueltos de sqlEjercicios resueltos de sql
Ejercicios resueltos de sql
Julian Benavidez
 
Consultas base de datos en SQL
Consultas base de datos en SQLConsultas base de datos en SQL
Consultas base de datos en SQL
Cristian Salazar C.
 
Manual sql server parte 1
Manual sql server parte 1Manual sql server parte 1
Manual sql server parte 1
Nelson James Sanchez Pachas
 

Destacado (16)

Comandos SQL
Comandos SQLComandos SQL
Comandos SQL
 
Comandos básicos para bases de datos mysql y workbench
Comandos básicos para bases de datos mysql y workbenchComandos básicos para bases de datos mysql y workbench
Comandos básicos para bases de datos mysql y workbench
 
Manual workbench
Manual workbenchManual workbench
Manual workbench
 
Tipos de datos en MySQL Workbench
Tipos de datos en  MySQL  WorkbenchTipos de datos en  MySQL  Workbench
Tipos de datos en MySQL Workbench
 
Guía rápida de MySQL Server 5.5 y Workbench 5.2
Guía rápida de MySQL Server 5.5 y Workbench 5.2Guía rápida de MySQL Server 5.5 y Workbench 5.2
Guía rápida de MySQL Server 5.5 y Workbench 5.2
 
Crear conexion a servidor en MySQL Workbench
Crear conexion a servidor en  MySQL WorkbenchCrear conexion a servidor en  MySQL Workbench
Crear conexion a servidor en MySQL Workbench
 
Comandos básicos mysql
Comandos básicos mysqlComandos básicos mysql
Comandos básicos mysql
 
Comandos utilizados en sql
Comandos utilizados en sqlComandos utilizados en sql
Comandos utilizados en sql
 
Creación de tablas y relaciones en mysql workbench
Creación de tablas y relaciones en mysql workbenchCreación de tablas y relaciones en mysql workbench
Creación de tablas y relaciones en mysql workbench
 
Crear y Eliminar Bases de datos en MySQL Workbench
Crear y Eliminar  Bases de datos en MySQL WorkbenchCrear y Eliminar  Bases de datos en MySQL Workbench
Crear y Eliminar Bases de datos en MySQL Workbench
 
Ejercicios De Sql (actualizado)
Ejercicios De Sql (actualizado)Ejercicios De Sql (actualizado)
Ejercicios De Sql (actualizado)
 
8.ejercicios SQL access
8.ejercicios SQL access8.ejercicios SQL access
8.ejercicios SQL access
 
Consultas en sql básico
Consultas en sql básicoConsultas en sql básico
Consultas en sql básico
 
Ejercicios resueltos de sql
Ejercicios resueltos de sqlEjercicios resueltos de sql
Ejercicios resueltos de sql
 
Consultas base de datos en SQL
Consultas base de datos en SQLConsultas base de datos en SQL
Consultas base de datos en SQL
 
Manual sql server parte 1
Manual sql server parte 1Manual sql server parte 1
Manual sql server parte 1
 

Similar a EJERCICIOS DE SQLl

Taller De Sql2
Taller De Sql2Taller De Sql2
Taller De Sql2
juliangalvez
 
Ejercicios De Algebra Realcional Taller 1
Ejercicios De Algebra Realcional Taller 1Ejercicios De Algebra Realcional Taller 1
Ejercicios De Algebra Realcional Taller 1
Edgar Sandoval
 
Taller De consultas SQL
Taller De consultas SQLTaller De consultas SQL
Taller De consultas SQL
negriz
 
Taller Algebra Relacional
Taller Algebra RelacionalTaller Algebra Relacional
Taller Algebra Relacional
jhonatan14
 
Laboratorio 1 MySQL.docx
Laboratorio 1 MySQL.docxLaboratorio 1 MySQL.docx
Laboratorio 1 MySQL.docx
SebastianVallejo21
 
Consultas by ramart
Consultas by ramartConsultas by ramart
Consultas by ramart
Cesar Ramart
 
Sr. Pablo García, Internet de las Cosas y Big Data: ¿hacia dónde va la Indust...
Sr. Pablo García, Internet de las Cosas y Big Data: ¿hacia dónde va la Indust...Sr. Pablo García, Internet de las Cosas y Big Data: ¿hacia dónde va la Indust...
Sr. Pablo García, Internet de las Cosas y Big Data: ¿hacia dónde va la Indust...
INACAP
 
1.1 y 1.2. proyecto varios conceptos y diferencia;estructura
1.1 y 1.2.  proyecto varios conceptos y diferencia;estructura1.1 y 1.2.  proyecto varios conceptos y diferencia;estructura
1.1 y 1.2. proyecto varios conceptos y diferencia;estructura
Ramona de Calderero
 
Sesion2
Sesion2Sesion2
Guia para elaborar un perfil
Guia para elaborar un perfil Guia para elaborar un perfil
Guia para elaborar un perfil
Nombre Apellidos
 
Formato presentación anteproyecto fica
Formato  presentación anteproyecto ficaFormato  presentación anteproyecto fica
Formato presentación anteproyecto fica
edwin armando rosero rosero
 
formato presentación anteproyecto de tesos
 formato  presentación anteproyecto de tesos formato  presentación anteproyecto de tesos
formato presentación anteproyecto de tesos
Cristian Pinto
 
SEMANA 2 Y 3.pdf
SEMANA 2 Y 3.pdfSEMANA 2 Y 3.pdf
SEMANA 2 Y 3.pdf
DorisAbad3
 
Tema1 proyectos
Tema1 proyectosTema1 proyectos
Tema1 proyectos
Aleman007
 
Plan de clase
Plan de clasePlan de clase
Plan de clase
Plan de clasePlan de clase
Conceptos_generales_acerca_de_un_proyecto.pptx
Conceptos_generales_acerca_de_un_proyecto.pptxConceptos_generales_acerca_de_un_proyecto.pptx
Conceptos_generales_acerca_de_un_proyecto.pptx
EnriqueRamirez658771
 
Formato Plan de Investigacion 2022 (3).pdf
Formato Plan de Investigacion 2022 (3).pdfFormato Plan de Investigacion 2022 (3).pdf
Formato Plan de Investigacion 2022 (3).pdf
jorgemaximosuyonalca
 
Conceptos_generales_acerca_de_un_proyecto.ppt
Conceptos_generales_acerca_de_un_proyecto.pptConceptos_generales_acerca_de_un_proyecto.ppt
Conceptos_generales_acerca_de_un_proyecto.ppt
LuisAlfonsoMagaaramo2
 
Conceptos_generales_acerca_de_un_proyecto.pptx
Conceptos_generales_acerca_de_un_proyecto.pptxConceptos_generales_acerca_de_un_proyecto.pptx
Conceptos_generales_acerca_de_un_proyecto.pptx
ZairaVilla1
 

Similar a EJERCICIOS DE SQLl (20)

Taller De Sql2
Taller De Sql2Taller De Sql2
Taller De Sql2
 
Ejercicios De Algebra Realcional Taller 1
Ejercicios De Algebra Realcional Taller 1Ejercicios De Algebra Realcional Taller 1
Ejercicios De Algebra Realcional Taller 1
 
Taller De consultas SQL
Taller De consultas SQLTaller De consultas SQL
Taller De consultas SQL
 
Taller Algebra Relacional
Taller Algebra RelacionalTaller Algebra Relacional
Taller Algebra Relacional
 
Laboratorio 1 MySQL.docx
Laboratorio 1 MySQL.docxLaboratorio 1 MySQL.docx
Laboratorio 1 MySQL.docx
 
Consultas by ramart
Consultas by ramartConsultas by ramart
Consultas by ramart
 
Sr. Pablo García, Internet de las Cosas y Big Data: ¿hacia dónde va la Indust...
Sr. Pablo García, Internet de las Cosas y Big Data: ¿hacia dónde va la Indust...Sr. Pablo García, Internet de las Cosas y Big Data: ¿hacia dónde va la Indust...
Sr. Pablo García, Internet de las Cosas y Big Data: ¿hacia dónde va la Indust...
 
1.1 y 1.2. proyecto varios conceptos y diferencia;estructura
1.1 y 1.2.  proyecto varios conceptos y diferencia;estructura1.1 y 1.2.  proyecto varios conceptos y diferencia;estructura
1.1 y 1.2. proyecto varios conceptos y diferencia;estructura
 
Sesion2
Sesion2Sesion2
Sesion2
 
Guia para elaborar un perfil
Guia para elaborar un perfil Guia para elaborar un perfil
Guia para elaborar un perfil
 
Formato presentación anteproyecto fica
Formato  presentación anteproyecto ficaFormato  presentación anteproyecto fica
Formato presentación anteproyecto fica
 
formato presentación anteproyecto de tesos
 formato  presentación anteproyecto de tesos formato  presentación anteproyecto de tesos
formato presentación anteproyecto de tesos
 
SEMANA 2 Y 3.pdf
SEMANA 2 Y 3.pdfSEMANA 2 Y 3.pdf
SEMANA 2 Y 3.pdf
 
Tema1 proyectos
Tema1 proyectosTema1 proyectos
Tema1 proyectos
 
Plan de clase
Plan de clasePlan de clase
Plan de clase
 
Plan de clase
Plan de clasePlan de clase
Plan de clase
 
Conceptos_generales_acerca_de_un_proyecto.pptx
Conceptos_generales_acerca_de_un_proyecto.pptxConceptos_generales_acerca_de_un_proyecto.pptx
Conceptos_generales_acerca_de_un_proyecto.pptx
 
Formato Plan de Investigacion 2022 (3).pdf
Formato Plan de Investigacion 2022 (3).pdfFormato Plan de Investigacion 2022 (3).pdf
Formato Plan de Investigacion 2022 (3).pdf
 
Conceptos_generales_acerca_de_un_proyecto.ppt
Conceptos_generales_acerca_de_un_proyecto.pptConceptos_generales_acerca_de_un_proyecto.ppt
Conceptos_generales_acerca_de_un_proyecto.ppt
 
Conceptos_generales_acerca_de_un_proyecto.pptx
Conceptos_generales_acerca_de_un_proyecto.pptxConceptos_generales_acerca_de_un_proyecto.pptx
Conceptos_generales_acerca_de_un_proyecto.pptx
 

EJERCICIOS DE SQLl

  • 1. EJERCICIOS DE SQL IVÁN ANDRÉS SUAREZ UNIDAD CENTRAL DEL VALLE DEL CAUCA FACULTAD DE INGENIERÍA PROGRAMA INGENIERÍA DE SISTEMAS TULUÁ, ABRIL 27 DE 2009
  • 2. EJERCICIOS DE SQL IVÁN ANDRÉS SUAREZ Presentado al ingeniero: Edgar Sandoval Ing. Sistemas UNIDAD CENTRAL DEL VALLE DEL CAUCA FACULTAD DE INGENIERÍA PROGRAMA INGENIERÍA DE SISTEMAS TULUÁ, ABRIL 27 DE 2009
  • 3. 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 lo financia. 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 el có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.
  • 4. 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 una vez 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: investigador principal, 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. Sobre esta 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.
  • 5. Q1: Nombre de los investigadores de Madrid y el nombre de los proyectos en los que trabajan. ALGEBRA RELACIONAL: Π 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‟ AND Asignado_A.DNIInvestigador = Investigador.DNIInvestigador AND Proyecto.CodProyecto = Asignado_A .CodProyecto;
  • 6. 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 de los 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 WHERE Investigador .Ciudad = „Soria‟ AND Asignado_A.DNIInvestigador = Investigador. DNIInvestigador AND Proyecto.CodProyecto = Asignado_A .CodProyecto;
  • 7. Q4: Nombre y teléfono de los investigadores principales que trabajen en proyectos cuyo presupuesto sea inferior a 5000 EUR. ALGEBRA RELACIONAL: Π NomInvestigador. Investigador, Telefono. Investigador (σ (Presupuesto. Proyecto < 5000) and (DNIInvestigador. Asignado_A = DNIInvestigador. Investigador) and (CodProyecto. Proyecto = CodProyecto. Asignado_A) (Investigador X Asignado_A X Proyecto). SQL: SELECT Investigador. NomInvestigador, Investigador .Telefono FROM Investigador , Asignado_A , Proyecto WHERE Proyecto .Presupuesto < 5000 AND Asignado_A.DNIInvestigador = Investigador. DNIInvestigador AND Proyecto.CodProyecto = Asignado_A .CodProyecto; Q5: Nombre de los proyectos que hayan comenzado este año y que pertenezcan al plan, cuyo código sea “PEUR”. ALGEBRA RELACIONAL: Π NomProyecto. Proyecto (σ (FechaInicio. Proyecto = 2009) and (CodPlan. Plan = “PEUR”) and (CodPlan. Plan = CodPlan. Proyecto) (Proyecto X Plan). SQL: SELECT proyecto.nomproyecto FROM Proyecto, Plan WHERE Proyecto.FechaInicio = 2009 AND Plan .CodPlan = “PEUR” AND Plan.CodPlan = Proyecto.CodPlan;
  • 8. Q6: Nombre de los investigadores principales de los proyectos cuya entidad financiadora sea la “CICYT”. ALGEBRA RELACIONAL: Π NomInvestigador. Investigador (σ (EntFinanciera. Plan = “CICYT”) and (DNIInvestigador. Asignado_A = DNIInvestigador. Investigador) and (CodProyecto. Proyecto = CodProyecto. Asignado_A) and (CodPlan. Proyecto = CodPlan. Plan) (Investigador X Asignado_A X Proyecto X Plan). SQL: SELECT Investigador.NomInvestigador FROM Investigador, Asignado_A, Proyecto, Plan WHERE Plan.EntFinanciera = „CICYT‟ AND Asignado_A.DNIInvestigador = Investigador. DNIInvestigador AND Proyecto.CodProyecto = Asignado_A .CodProyecto AND Proyecto.CodPlan = Plan.CodPlan; Q7: Nombre de los planes a los que pertenecen los proyectos con un presupuesto superior a 10000 EUR pero que cuyo investigador principal no sea ni de Madrid ni de Barcelona. ALGEBRA RELACIONAL: Π NomPlan. Plan (σ (Presupuesto. Proyecto > 10000) and (Ciudad. Investigador = <> ”Madrid”) and (Ciudad. Investigador = <> ”Barcelona”) and (DNIInvestigador. Asignado_A = DNIInvestigador. Investigador) and (CodProyecto. Proyecto = CodProyecto. Asignado_A) and (CodPlan. Proyecto = CodPlan. Plan) (Investigador X Asignado_A X Proyecto X Plan). SQL: SELECT plan.nomplan FROM Investigador, Asignado_A, Proyecto, Plan WHERE Proyecto.Presupuesto > 10000 AND Investigador.Ciudad = <> ‟Madrid‟ AND Investigador.Ciudad = <> ‟Barcelona‟ AND Asignado_A.DNIInvestigador = Investigador. DNIInvestigador AND Proyecto.CodProyecto = Asignado_A .CodProyecto AND Proyecto.CodPlan = Plan.CodPlan;
  • 9. Q8: Nombre de aquellos investigadores que trabajan en todos los proyectos de investigación. ALGEBRA RELACIONAL: Π NomInvestigador. Investigador, NomProyecto. Proyecto (DNIInvestigador. Asignado_A = DNIInvestigador. Investigador) and (CodProyecto. Proyecto = CodProyecto. Asignado_A) (Investigador X Asignado_A X Proyecto). SQL: SELECT Investigador.NomInvestigador, Proyecto.NomProyecto FROM Investigador, Asignado_A, Proyecto WHERE Asignado_A.DNIInvestigador = Investigador. DNIInvestigador AND Proyecto.CodProyecto = Asignado_A .CodProyecto; Q9: Obtener el nombre de los proyectos cuyo investigador principal es de La Coruña y que tienen un presupuesto concedido superior a todos los proyectos financiados por el plan quot;CICYTquot;. Π NomProyecto. Proyecto (σ (Ciudad. Investigador = “Coruña”) and (Presupuesto. Proyecto > (Presupuesto. Proyecto = “CICYT”)) and (DNIInvestigador. Asignado_A = DNIInvestigador. Investigador) and (CodProyecto. Proyecto = CodProyecto. Asignado_A) and (CodPlan. Proyecto = CodPlan. Plan) (Investigador X Asignado_A X Proyecto X Plan). Q10: Obtener el nombre de los investigadores que participan en proyectos que tienen un presupuesto superior o igual al proyecto con nombre quot;FOLREquot;. Π NomInvestigador. Investigador (σ (Presupuesto. Proyecto > = (Presupuesto. Proyecto = “FOLRE”)) and (DNIInvestigador. Asignado_A = DNIInvestigador. Investigador) and (CodProyecto. Proyecto = CodProyecto. Asignado_A) and (CodPlan. Proyecto = CodPlan. Plan) (Investigador X Asignado_A X Proyecto X Plan).