You are on page 1of 5

BASE DE DATOS DE ESTUDIANTES

CONSULTAS

1. Obtenga la lista de estudiante con su nombre completo, documento de identidad,


nombre, tipo documento, y ciudad de procedencia.

SELECT (Estudiante.PrimerNombre&' '& Estudiante.SegundoNombre&' '&


Estudiante.PrimerApellido&' '& Estudiante.SegundoApellido) AS N0MBRE,
Estudiante.DocumentoIdentidad, TipoDocumento.nombre, Ciudad.Nombre
FROM Estudiante, TipoDocumento, Ciudad
WHERE Estudiante.IdCiudadNacimiento=Ciudad.Id AND
Estudiante.IdTipoDoc=TipoDocumento.Id;

2. Obtenga la lista de estudiantes con la fecha y valor de matricula que ha pagado.

SELECT (Estudiante.PrimerNombre&' '& Estudiante.SegundoNombre&' '&


Estudiante.PrimerApellido&' '& Estudiante.SegundoApellido) AS N0MBRE,
Matricula.Fecha, Matricula.Valor
FROM Estudiante, Matricula
WHERE Estudiante.Id=Matricula.IdEstudiante;
3. De cada departamento obtenga la cantidad de estudiantes matriculados.

SELECT Count(Departamento.Id) AS totalEstudiantes, Departamento.Nombre


FROM Estudiante, Ciudad, Departamento, Matricula
WHERE Estudiante.IdCiudadNacimiento=Ciudad.Id AND
Ciudad.IdDepto=Departamento.Id AND Estudiante.Id=Matricula.IdEstudiante
GROUP BY Departamento.Nombre, Departamento.Id;

4. Obtenga la lista de estudiantes en cuya inscripción haya tenido observaciones.

SELECT (Estudiante.PrimerNombre&' '& Estudiante.SegundoNombre&' '&


Estudiante.PrimerApellido&' '& Estudiante.SegundoApellido) AS N0MBRE,
Inscripcion.Observaciones
FROM Estudiante, Inscripcion, Matricula
WHERE Estudiante.Id=Matricula.IdEstudiante AND
Matricula.Id=Inscripcion.IdMatricula AND Inscripcion.Observaciones is not null;

5. Obtenga la lista de materias inscritas por cada estudiante junto con la fecha en
que inscribió cada materia.

SELECT (Estudiante.PrimerNombre&' '& Estudiante.SegundoNombre&' '&


Estudiante.PrimerApellido&' '& Estudiante.SegundoApellido) AS N0MBRE,
Materia.Nombre, DetalleInscripcion.Fecha
FROM Estudiante, Materia, DetalleInscripcion, Matricula, Inscripcion
WHERE Estudiante.Id=Matricula.IdEstudiante AND
Matricula.Id=Inscripcion.IdMatricula AND
Inscripcion.Id=DetalleInscripcion.IdInscripcion AND
DetalleInscripcion.IdMateria=Materia.Id;

6. Obtenga el total de notas de las materias inscritas por cada estudiante.

SELECT Sum(Materia.HorasSemana) AS SumaDeHorasSemana,


Estudiante.PrimerNombre
FROM Estudiante, Materia, DetalleInscripcion, Matricula, Inscripcion
WHERE Estudiante.Id=Matricula.IdEstudiante AND
Matricula.Id=Inscripcion.IdMatricula AND
Inscripcion.Id=DetalleInscripcion.IdInscripcion AND
DetalleInscripcion.IdMateria=Materia.Id
GROUP BY Estudiante.PrimerNombre;

7. Obtenga la cuenta de cuantos estudiantes se encuentran inscritos en cada


materia.

SELECT COUNT(Estudiante.Id) AS TOTALESTUDIANTE, Materia.Nombre


FROM Estudiante, Materia, DetalleInscripcion, Matricula, Inscripcion
WHERE Estudiante.Id=Matricula.IdEstudiante AND
Matricula.Id=Inscripcion.IdMatricula AND
Inscripcion.Id=DetalleInscripcion.IdInscripcion AND
DetalleInscripcion.IdMateria=Materia.Id
GROUP BY Materia.Nombre;

8. Obtenga el valor total de las matriculas recibidas.

SELECT SUM(Matricula.Valor) AS TOTALMATRICULAS


FROM Matricula;

9. Obtenga el promedio de calificaciones para cada materia por estudiante.

SELECT AVG(Calificacion.Nota) AS PROMEDIO, Estudiante.PrimerNombre,


Materia.Nombre
FROM Estudiante, Materia, DetalleInscripcion, Matricula, Inscripcion, Calificacion
WHERE Estudiante.Id=Matricula.IdEstudiante AND
Matricula.Id=Inscripcion.IdMatricula AND
Inscripcion.Id=DetalleInscripcion.IdInscripcion AND
DetalleInscripcion.IdMateria=Materia.Id AND
DetalleInscripcion.Id=Calificacion.IdDetalleInscripcion
GROUP BY Estudiante.PrimerNombre, Materia.Nombre;

10.Obtenga el promedio total por de calificaciones por estudiante.

SELECT FORMAT (AVG(Calificacion.Nota),'#.#' ) AS PROMEDIO,


Estudiante.PrimerNombre
FROM Estudiante, Materia, DetalleInscripcion, Matricula, Inscripcion, Calificacion
WHERE Estudiante.Id=Matricula.IdEstudiante AND
Matricula.Id=Inscripcion.IdMatricula AND
Inscripcion.Id=DetalleInscripcion.IdInscripcion AND
DetalleInscripcion.IdMateria=Materia.Id AND
DetalleInscripcion.Id=Calificacion.IdDetalleInscripcion
GROUP BY Estudiante.PrimerNombre;

11.Obtenga la lista de estudiantes cuyo promedio sea superior a 5.5.

SELECT FORMAT (AVG(Calificacion.Nota),'#.#' ) AS PROMEDIO,


Estudiante.PrimerNombre
FROM Estudiante, Materia, DetalleInscripcion, Matricula, Inscripcion, Calificacion
WHERE Estudiante.Id=Matricula.IdEstudiante AND
Matricula.Id=Inscripcion.IdMatricula AND
Inscripcion.Id=DetalleInscripcion.IdInscripcion AND
DetalleInscripcion.IdMateria=Materia.Id AND
DetalleInscripcion.Id=Calificacion.IdDetalleInscripcion
GROUP BY Estudiante.PrimerNombre
HAVING AVG(Calificacion.Nota)>5.5;

12.Obtenga la lista de estudiantes que solo tienen inscritas tres materias.

SELECT Estudiante.PrimerNombre AS N0MBRE, COUNT(Materia.Nombre) AS


MATERIAS
FROM Estudiante, Materia, DetalleInscripcion, Matricula, Inscripcion
WHERE Estudiante.Id=Matricula.IdEstudiante AND
Matricula.Id=Inscripcion.IdMatricula AND
Inscripcion.Id=DetalleInscripcion.IdInscripcion AND
DetalleInscripcion.IdMateria=Materia.Id
GROUP BY Estudiante.PrimerNombre
HAVING COUNT(Materia.Nombre)=3;

13.Obtenga la lista de estudiantes que inscribieron materias en los últimos 15 días del
mes de febrero.

SELECT (Estudiante.PrimerNombre&' '& Estudiante.SegundoNombre&' '&


Estudiante.PrimerApellido&' '& Estudiante.SegundoApellido) AS N0MBRE,
DetalleInscripcion.Fecha
FROM Estudiante, Materia, DetalleInscripcion, Matricula, Inscripcion
WHERE Estudiante.Id=Matricula.IdEstudiante AND
Matricula.Id=Inscripcion.IdMatricula AND
Inscripcion.Id=DetalleInscripcion.IdInscripcion AND
DetalleInscripcion.IdMateria=Materia.Id AND
DetalleInscripcion.Fecha>#15/02/2009# AND
DetalleInscripcion.Fecha<#28/02/2009#;

14.Obtenga la lista de estudiantes que pagaron una matrícula superior a $250.000.

SELECT Estudiante.PrimerNombre, Matricula.Valor


FROM Estudiante, Matricula
WHERE Estudiante.Id=Matricula.IdEstudiante AND Matricula.Valor>120000;

15.Obtenga promedio de notas de cada estudiante por cada periodo.

SELECT FORMAT (AVG(Calificacion.Nota),'#.#' ) AS PROMEDIO,


Estudiante.PrimerNombre, Periodo.Nombre
FROM Estudiante, Materia, DetalleInscripcion, Matricula, Inscripcion, Calificacion,
Periodo
WHERE Estudiante.Id=Matricula.IdEstudiante AND
Matricula.Id=Inscripcion.IdMatricula AND
Inscripcion.Id=DetalleInscripcion.IdInscripcion AND
DetalleInscripcion.IdMateria=Materia.Id AND
DetalleInscripcion.Id=Calificacion.IdDetalleInscripcion AND
Calificacion.IdPeriodo=Periodo.Id
GROUP BY Estudiante.PrimerNombre, Periodo.Nombre, PERIODO.ID
ORDER BY Estudiante.PrimerNombre, PERIODO.ID;

You might also like