
Taller Consultas Relacionales
taller de consuestudiante.ltas
Con la información de la base de datos de la Institución realizar las siguientes consultas:
1. Visualizar los estudiantes con sus acudientes
¿Qué desea consultar y de qué tablas?
estudiante.codigoestudiante, estudiante.nombre, acudiente.codigoacudiente, acudiente.nombre
¿Qué tablas se ven afectadas o involucradas?
estudiante, acuediente, estduainteacudiente
¿Cómo se relacionan las tablas?
estudiante.codigoestudiante = estudianteacudiente.codigoestudiante1
acudiente.codigoacudiente = estudianteacudiente.codigoacudiente1
Comandos
join
Sintaxis
SELECT estudiante.CodigoEstudiante, estudiante.Nombre as EstudianteNombre, acudiente.codigoAcudiente, acudiente.Nombre as AcudienteNombre from estudiante join estudianteAcudiente on estudiante.Codigoestudiante = estudianteacudiente.codigoEstudiante1 join acudiente on acudiente.codigoacudiente = estudianteAcudiente.codigoAcudiente1;
2. Que estudiantes no tienen acudiente asignado
¿Qué desea consultar y de qué tablas?
estudiante.codigoestudiante, estudiante.nombre
¿Qué tablas se ven afectadas o involucradas?
estudiante, estudianteacudiente
¿Cómo se relacionan las tablas?
estudiante.codigoestudiante = estudianteacudiente.codigoestudiante1
Comandos
left join
where
Sintaxis
select estudiante.CodigoEstudiante, estudiante.Nombre from estudiante left join estudianteAcudiente on estudiante.CodigoEstudiante = estudianteAcudiente.codigoEstudiante1 where estudianteAcudiente.codigoEstudiante1 is null;
3. Que acudientes no matricularon sus hijos en la institución
¿Qué desea consultar y de qué tablas?
acudiente.codigoacudiente, acudiente.nombre
¿Qué tablas se ven afectadas o involucradas?
acudiente,estuanteacudiente
¿Cómo se relacionan las tablas?
acudiente.codigoacudiente = estudianteacudiente.codigoacudiente1
Comandos
left join
where
Sintaxis
select acudiente.codigoAcudiente, acudiente.Nombre from acudiente left join estudianteAcudiente on acudiente.codigoAcudiente = estudianteAcudiente.codigoAcudiente1 where estudianteAcudiente.codigoAcudiente1 is null;
4.Visualizar las materias que matriculó el estudiante 00001
¿Qué desea consultar y de qué tablas?
estudiante.codigoestudiante, materia.codigomateria, materia.nombre
¿Qué tablas se ven afectadas o involucradas?
estudiantemateria, materia
¿Cómo se relacionan las tablas?
estudiantemateria.codigomateria1 =materia.codigomateria
Comandos
join
where
Sintaxis
select estudiante.CodigoEstudiante, materia.CodigoMateria, materia.Nombre from estudiantemateria join materia on estudiantemateria.codigomateria1 = materia.CodigoMateria where estudiantemateria.codigoestudiante2 = 1;
5. Visualizar los estudiantes con las materias que matricularon
¿Qué desea consultar y de qué tablas?
estudiante.codigoestudiante, estudiante.nombre, materia.codigomateria
¿Qué tablas se ven afectadas o involucradas?
estudiante, estudiantemateria, materia
¿Cómo se relacionan las tablas?
estudiante.codigoestudiante =estudiantemateria.codigoestudiante2
estudiantemateria.codigomateria1 =materia.codigomateria
Comandos
join
Sintaxis
select estudiante.CodigoEstudiante, estudiante.Nombre as EstudianteNombre,
materia.CodigoMateria, materia.Nombre as MateriaNombre from estudiante
join estudiantemateria on estudiante.CodigoEstudiante = estudiantemateria.codigoestudiante2 join materia on estudiantemateria.codigomateria1 = materia.CodigoMateria;
6. Visualizar un listado de los estudiantes que no se han matriculado
¿Qué desea consultar y de qué tablas?
estudiante.codigoestudiante, estudiante.nombre
¿Qué tablas se ven afectadas o involucradas?
estudiante, estudiantemateria
¿Cómo se relacionan las tablas?
estudiante.codigoestudiante =estudiantemateria.codigoestudiante2
Comandos
left join
where
Sintaxis
select estudiante.CodigoEstudiante, estudiante.Nombre from estudiante left join estudiantemateria on estudiante.CodigoEstudiante = estudiantemateria.codigoestudiante2 where estudiantemateria.codigoestudiante2 is null;
7. Visualizar un listado de las materias a las que ningún estudiante se matriculó.
¿Qué desea consultar y de qué tablas?
materia.codigomateria, materia.nombre
¿Qué tablas se ven afectadas o involucradas?
materia, estudiantemateria
¿Cómo se relacionan las tablas?
materia.codigomateria = estudiantemateria.codigomateria1
Comandos
left join
where
Sintaxis
select materia.CodigoMateria, materia.Nombre from materia left join estudiantemateria on materia.CodigoMateria = estudiantemateria.codigomateria1 where estudiantemateria.codigomateria1 is null;
8. Visualizar los docentes con las materias que dictan
¿Qué desea consultar y de qué tablas?
profesor.codigoprofesor, profesor.nombre. materia.codigoateria, materia.nombre
¿Qué tablas se ven afectadas o involucradas?
profesor, materiaprofesor, materia
¿Cómo se relacionan las tablas?
profesor.codigoprofesor = materiaprofesor.codigoprofesor1
materiaprofesor.codigomateria2 = materia.codigomateria
Comandos
join
Sintaxis
select profesor.codigoprofesor, profesor.Nombre as ProfesorNombre,
materia.CodigoMateria, materia.Nombre as MateriaNombre from profesor
join materiaprofesor on profesor.codigoprofesor = materiaprofesor.codigoprofesor1
join materia on materiaprofesor.codigomateria2 = materia.CodigoMateria;
9. Visualizar las materias que no tienen docente asignado.
¿Qué desea consultar y de qué tablas?
materia.codigomateria, materia.nombre
¿Qué tablas se ven afectadas o involucradas?
materia, materiaprofesor
¿Cómo se relacionan las tablas?
materia.codigomateria = materiaprofesor.codigomateria2
Comandos
left join
where
Sintaxis
select materia.CodigoMateria, materia.Nombre from materia left join materiaprofesor on materia.CodigoMateria = materiaprofesor.codigomateria2 where materiaprofesor.codigomateria2 is null;
10. Visualizar que docentes no tienen materias asignadas.
¿Qué desea consultar y de qué tablas?
profesor.codigoprofesor, profesor.nombre
¿Qué tablas se ven afectadas o involucradas?
profesor, materiaprofesor
¿Cómo se relacionan las tablas?
profesor.codigoprofesor = materiaprofesor.codigoprofesor1
Comandos
left join
where
Sintaxis
select profesor.codigoprofesor, profesor.Nombre from profesor left join materiaprofesor on profesor.codigoprofesor = materiaprofesor.codigoprofesor1 where materiaprofesor.codigoprofesor1 is null;
11. Visualizar el estudiante con las materias que tiene matriculadas y que docentes las dicta.
¿Qué desea consultar y de qué tablas?
estudiante.codigoestudiante, estudiante.nombre, materia.codigomateria, materia.nombre, profesor.codigoprofesor, profesor.nombre
¿Qué tablas se ven afectadas o involucradas?
estudiante, estudiantemateria, materia, materiaprofesor, profesor
¿Cómo se relacionan las tablas?
estudiante.codigoestudiante = estuidiantemateria.codigoestudiante2
estudiantemateria.codigomateria1 =materia.codigomateria
materia.codigomateria = materiaprofesor.codigomateria2
materiaprofesor.codigoprofesor1 = profesor.codigoprofesor
Comandos
join
Sintaxis
select estudiante.CodigoEstudiante, estudiante.Nombre as EstudianteNombre, materia.CodigoMateria, materia.Nombre as MateriaNombre, profesor.codigoprofesor, profesor.Nombre as ProfesorNombre from estudiante join estudiantemateria on estudiante.CodigoEstudiante = estudiantemateria.codigoestudiante2 join materia on estudiantemateria.codigomateria1 = materia.CodigoMateria join materiaprofesor on materia.CodigoMateria = materiaprofesor.codigomateria2 join profesor on materiaprofesor.codigoprofesor1 = profesor.codigoprofesor;
Nota: realizar el análisis de cada punto y su respectiva sintaxis.
Ver las consultas: