Está en la página 1de 7

UNIVERSIDAD NACIONAL DE CHIMBORAZO

ESCUELA DE INGENIERIA EN SISTEMAS Y COMPUTACIN

ASIGNATURA: Base de Datos I

DOCENTE: Ing. Pal Paguay

SEMESTRE: Tercero
NOMBRE: Samuel Naranjo
FECHA: 01/07/2014

Dado el siguiente Modelo Conceptual (DER) generado en EDraw:

Genere el Modelo Fsico (Power Designer):


Materia
codmat <pi> Integer
<M>
nombre
Variable characters (60)
Pk_Materia <pi>

Estudiante
codest
<pi> Integer
<M>
cedula
Variable characters (10)
nombres
Variable characters (100)
apellidos
Variable characters (100)
Sexo
Variable characters (1)
fecha_nac
Date
fecha_ing
Date
telefono
Variable characters (10)
direccion
Variable characters (300)
Pk_Estudiante <pi>

Relationship_3

Evaluacin
Relationship_2

codmat
<pi,fi3> Integer <M>
codest
<pi,fi1> Integer <M>
coddoc
<fi2>
Integer
aporte 1
Float
aporte 2
Float
total
Float
asistencia
Integer
equivalencia
Float
Pk_Evaluacin <pi>

Relationship_4

Docente
coddoc
<pi> Integer
<M>
cedula_doc
Variable characters (10)
nombres_doc
Variable characters (100)
fecha_nac_doc
Date
fecha_ing_doc
Date
sexo
Variable characters (1)
categoria
Variable characters (60)
salario
Float
direccion_doc
Variable characters (300)
Pk_Docente <pi>

Relationship_5

Telefono_docente
coddoc <fi> Integer
telefono <pi> Variable characters (10) <M>
Pk_Docente_Telefono <pi>

Materia
Relationship_3
codmat
FK_EVALUACI_RELATIONS_MATERIA
nombre
Estudiante
codest
cedula
nombres
apellidos
Sexo
fecha_nac
fecha_ing
telefono
direccion

Relationship_2
FK_EVALUACI_RELATIONS_ESTUDIAN

Evaluacin
codmat
codest
coddoc
aporte 1
aporte 2
total
asistencia
equivalencia

Relationship_4
FK_EVALUACI_RELATIONS_DOCENTE

Docente
coddoc
cedula_doc
nombres_doc
fecha_nac_doc
fecha_ing_doc
sexo
categoria
salario
direccion_doc

Relationship_5
FK_TELEFONO_RELATIONS_DOCENTE

Telefono_docente
coddoc
telefono

Genere el Esquema de Base de Datos (Diagrama en SQL Server)

Docente
coddoc
cedula_doc
nombres_doc

Telefono_Docente

fecha_nac_doc

coddoc

fecha_ing_doc

telefono

sexo_doc
categoria
salario
direccion_doc

Evaluacion
codmat
codest
coddoc
aporte1
aporte2
total
asistencia
equiv alencia

Estudiante
codest
cedula
nombres
apellidos
sexo
fecha_nac
fecha_ing
telefono
direccion

Materia
codmat
nombre

Genere las sentencias para los siguientes requerimientos:

1. Seleccionar los estudiantes de sexo Femenino


Select * From Estudiante where sexo in ('F')

2. Seleccionar los estudiantes de sexo Masculino ordenado por nombre


Select * From Estudiante Where sexo in('M')
Order by nombres

3. Seleccionar los estudiantes de sexo Masculino ordenado por nombre (ascendente)


Select * From Estudiante Where sexo in ('M')
Order by nombres asc;

4. Seleccionar los estudiantes de sexo Femenino ordenado por nombre (ascendente)


Select * From Estudiante Where sexo in ('F')
Order by nombres asc;

5. Seleccionar las evaluaciones (notas) con las materias y los datos de los estudiantes de sexo masculino
Select * From Estudiante Inner Join Evaluacion on
Estudiante.codest=Evaluacion.codest Inner Join Materia on
Materia.codmat=Evaluacion.codmat Where sexo in ('M')

6. Seleccionar las evaluaciones (notas) con las materias y los datos de los estudiantes de sexo femenino
Select * From Estudiante Inner Join Evaluacion on
Estudiante.codest=Evaluacion.codest Inner Join Materia on
Materia.codmat=Evaluacion.codmat Where sexo in ('F')

7. Seleccionar las evaluaciones (notas) con las materias y los datos de los estudiantes de sexo masculino
ordenados por materias
Select * From Estudiante Inner Join Evaluacion on
Estudiante.codest= Evaluacion.codest Inner Join Materia on
Materia.codmat=Evaluacion.codmat Where sexo in ('M')
Order by Materia.nombre;

8. Seleccionar las evaluaciones (notas) con las materias y los datos de los estudiantes de sexo Femenino
ordenados por el apellido
Select * From Estudiante Inner Join Evaluacion on
Estudiante.codest= Evaluacion.codest Inner Join Materia on
Materia.codmat=Evaluacion.codmat Where sexo in ('F')
Order by Estudiante.apellidos;

9. Seleccionar las evaluaciones (notas) de un estudiante dado con los datos del docente
Select * From Evaluacion Inner Join Estudiante on
Evaluacion.codest=Estudiante.codest Inner Join Docente on
Docente.coddoc=Estudiante.codest
Where Estudiante.codest=1

10. Seleccionar las evaluaciones con las materias


Select * From Evaluacion Inner Join Materia on
Evaluacion.codmat=Materia.codmat

11. Seleccionar las evaluaciones con las materias ms los datos del docente
Select *From Evaluacion Inner Join Materia on
Evaluacion.codmat=Materia.codmat Inner Join Docente on
Docente.coddoc=Materia.codmat

12. Seleccionar el promedio de notas de todo el curso

Select AVG(Evaluacion.total) From Evaluacion

13. Seleccionar el promedio de los estudiantes de sexo masculino


Select AVG(Evaluacion.total) From Estudiante Inner Join Evaluacion on
Estudiante.codest=Evaluacion.codest
Where Estudiante.sexo in ('M')

14. Seleccionar el promedio de los estudiantes de sexo femenino


Select AVG(Evaluacion.total) From Estudiante Inner Join Evaluacion on
Estudiante.codest=Evaluacion.codest
Where Estudiante.sexo in ('F')

15. Seleccionar el promedio de notas por cada estudiante


Select * From Estudiante Inner Join Evaluacion on
Estudiante.codest=Evaluacion.codest

16. Seleccionar la cantidad de evaluaciones por cada estudiante


Select Estudiante.nombres,Estudiante.apellidos,
Count(Evaluacion.codest) As Evaluaciones From Estudiante Inner Join
Evaluacion on
Estudiante.codest=Evaluacion.codest
Group By Estudiante.nombres,Estudiante.apellidos

17. Seleccionar el promedio de notas por cada estudiante ordenado por el apellido del estudiante
Select Estudiante.nombres,Estudiante.apellidos,Avg(Evaluacion.total)As
Promedio From Estudiante Inner Join Evaluacion on
Estudiante.codest=Evaluacion.codest
Group By Estudiante.nombres,Estudiante.apellidos
Order By Estudiante.apellidos Asc

18. Seleccionar la cantidad de estudiantes por cada materia ordenado por el apellido del estudiante
Select Materia.nombre,Count (Evaluacion.codest) As N_Estudiante From
Estudiante Inner Join Evaluacion on
Estudiante.codest=Evaluacion.codest Inner Join Materia
On Materia.codmat=Evaluacion.codmat
Group By Materia.nombre

19. Seleccionar el promedio de notas por cada materia


Select Materia.nombre ,Avg(Evaluacion.codest) As Promedio_Materia From
Materia Inner Join Evaluacion
On Materia.codmat=Evaluacion.codmat
Group By Materia.nombre

20. Seleccionar la cantidad de evaluaciones por cada materia


Select Materia.nombre,Count (Materia.codmat) As CantidadEva From
Materia Inner Join Evaluacion
On Materia.codmat=Evaluacion.codmat
Group BY Materia.nombre

21. Seleccionar el promedio de notas por cada materia ordenado por el promedio
Select Materia.nombre,Avg (Evaluacion.total) From Materia Inner Join
Evaluacion
On Materia.codmat=Evaluacion.codmat
Group BY Materia.nombre
Order BY 2

22.

Seleccionar la cantidad de evaluaciones por cada docente

Select Docente.nombres_doc, Count (Docente.coddoc)As N_Evaluaciones


From Docente Inner Join Evaluacion
On Docente.coddoc=Evaluacion.coddoc
Group BY Docente.nombres_doc

23. Seleccionar el promedio de notas por cada materia ordenado por el promedio
Select Materia.nombre ,Avg(Evaluacion.total) As Promedio_Materia From
Materia Inner Join Evaluacion
On Materia.codmat=Evaluacion.codmat
Group BY Materia.nombre
Order BY 2

24. Seleccionar la cantidad de evaluaciones de cada materia ordenado por la cantidad


Select Materia.nombre,COUNT(Materia.codmat)As Cantidad_Evaluacion From
Materia Inner Join Evaluacion
On Materia.codmat=Evaluacion.codmat
Group BY Materia.nombre
Order BY 2

25. Seleccionar el promedio de notas por cada docente ordenado por el promedio
Select nombres_doc, AVG (Evaluacion.total) As Nota_Docente From Docente
Inner Join Evaluacion
On Docente.coddoc=Evaluacion.coddoc
Group BY nombres_doc

26. Seleccionar la cantidad de evaluaciones por cada docente ordenado por la cantidad
Select Docente.nombres_doc,Count(Evaluacion.total) As
Cantidad_Evaluacion From Evaluacion Inner Join Docente on
Evaluacion.coddoc=Docente.coddoc
Group By Docente.nombres_doc
Order By 2

27. Seleccionar la cantidad de evaluaciones por cada materia y docente


Select Docente.nombres_doc, Count (Docente.coddoc)AS
Evaluaciones_Docente ,Count (Materia.codmat) As Evaluaciones_Materia
From Docente Inner Join Evaluacion
On Docente.coddoc=Evaluacion.coddoc Inner Join
Materia
On Evaluacion.codmat=Materia.codmat
Group By Docente.nombres_doc

28. Seleccionar el promedio de evaluaciones por materia y docente


Select Materia.nombre, Docente.nombres_doc, AVG (Evaluacion.total) As
Promedio_Materia, AVG(Evaluacion.total) As Promedio_Docente From
Evaluacion Inner Join Materia on
Evaluacion.codmat=Materia.codmat Inner Join Docente on
Docente.coddoc=Materia.codmat
Group By Materia.nombre, Docente.nombres_doc