Taller consultas relacionales
Con la información de la base de datos de la Institución realizar las siguientes consultas:
1. Visualizar los estudiantes con sus acudientes
Análisis
¿Qué desea consultar y de qué tablas?
estudiante.codigoEs, estudiante.nombre,
acudiente.codigoAc, acudiente.nombre,
¿Qué tablas se ven afectadas o involucradas?
Tabla estudiante,
Tabla acudiente
Tabla estudianteAcudiente
¿Cómo se relacionan las tablas?
estudiante.codigoEs = estudianteAcudiente.codigoEs1
acudiente.codigoAc= estudianteAcudiente.codigoAc1
Comando
Select, where
Sintaxis
select estudiante.codigoEs as 'Código estudiante', estudiante.Nombre as 'Nombre del estudiante', acudiente.codigoAc as 'Codigo Acudiente', acudiente.nombre as 'Nombre del Acudiente' from estudiante, acudiente, estudianteAcudiente where estudiante.codigoEs= estudianteAcudiente.codigoEs1 and acudiente.codigoAc=estudianteAcudiente.codigoAc1;
2. Que estudiantes no tienen acudiente asignado
Análisis
¿Qué desea consultar y de qué tablas?
estudiante.codigoEs, estudiante.nombre
¿Qué tablas se ven afectadas o involucradas?
Tabla estudiante
Tabla estudianteAcudiente
¿Cómo se relacionan las tablas?
Estudiante.codigoEs= estudianteAcudiente.codigoEs1
Comando
Select, where
Sintaxis
select estudiante.codigoEs, estudiante.nombre from estudiante, estudianteAcudiente where estudiante.codigoEs not in(select estudianteAcudiente.codigoEs1 from estudianteAcudiente).
3. Que acudientes no matricularon sus hijos en la institución
Análisis
¿Qué desea consultar y de qué tablas?
acudiente.codigoAc, acudiente.nombre
¿Qué tablas se ven afectadas o involucradas?
Tabla acudiente
Tabla estudianteAcudiente
¿Cómo se relacionan las tablas?
acudiente.codigoAc = estudianteAcudiente.codigoAc1
Comando
Select, where
Sintaxis
select acudiente.codigoAc, acudiente.nombre from acudiente, estudianteAcudiente where acudiente.codigoAc not int (select estudianteAcudiente.codigoAc1 from estudianteAcudiente)
4.Visualizar las materias que matriculó el estudiante 00001
Análisis
¿Qué desea consultar y de qué tablas?
materia.codigo, materia.nombre
¿Qué tablas se ven afectadas o involucradas?
Tabla materia
Tabla estudiante
Tabla estudianteMateria
¿Cómo se relacionan las tablas?
estudiante.codigoEs= estudianteMateria.codigoEs1
estudianteMateria.codigoMat1 = materia.codigoMat
Comando
Select, where
Sintaxis
select materia.codigoMat as 'Codigo Materia', materia.nombre as 'Nombre de Materia' from materia, estudiante, estudianteMateria where estudiante.codigoEs='00001' and estudiante.codigoEs = estudianteMateria.codigoEs2 and estudianteMateria.codigoMat1 = materia.codigoMat;
5. Visualizar los estudiantes con las materias que matricularon
Análisis
¿Qué desea consultar y de qué tablas?
estudiante.codigoEs, esutudiante.nombre,
materia.codigoMat, materia.nombre
¿Qué tablas se ven afectadas o involucradas?
Tabla estudiante
Tabla materia
Tabla estudianteMateria
¿Cómo se relacionan las tablas?
estudiante.codigoEs = estudianteMateria.codigoEs1
estudianteMateria.codigoMat1 = materia.codigoMat
Comando
Select, where
Sintaxis
select estudiante.codigoEs as 'Codigo Estudiante', estudiante.nombre as 'Nombre del Estudiante', materia.codigoMat as 'Codigo Materia', materia.nombre as 'Nombre de la Materia' from estudiante, materia, estudianteMateria where estudiante.codigoEs = estudianteMateria.codigoEs2 and estudianteMateria.codigoMat1 = materia.codigoMat;
6. Visualizar un listado de los estudiantes que no se han matriculado
Análisis
¿Qué desea consultar y de qué tablas?
estudiante.codigoEs, estudiante.nombre
¿Qué tablas se ven afectadas o involucradas?
Tabla estudiante
Tabla estudiante
¿Cómo se relacionan las tablas?
estudiante.codigoEs = estudianteMateria.codigoEs1
Comando
Select, where
Sintaxis
select estudiante.codigoEs as 'Codigo Estudiante', estudiante.nombre as 'Nombre del Estudiante' from estudiante where estudiante.codigoEs not in(select estudianteMateria.codigoEs2 from estudianteMateria);
7. Visualizar un listado de las materias a las que ningún estudiante se matriculó.
Análisis
¿Qué desea consultar y de qué tablas?
materia.codigoMat, materia.nombre
¿Qué tablas se ven afectadas o involucradas?
Tabla materia
Tabla estudianteMateria
¿Cómo se relacionan las tablas?
materia.codigoMat = estudianteMateria.codigoMat1
Comando
Select, where
Sintaxis
select materia.codigoMat as 'Codigo Materia', materia.nombre as 'Nombre de la Materia' from materia, estudianteMateria where materia.codigoMat not in (select estudianteMateria.codigoMat1 from estudianteMateria)
8. Visualizar los docentes con las materias que dictan
Análisis
¿Qué desea consultar y de qué tablas?
profesor.codigoProf, profesor.nombre, materia.codigoMat, materia.nombre
¿Qué tablas se ven afectadas o involucradas?
Tabla profesor
Tabla materia
Tabla materiaProfesor
¿Cómo se relacionan las tablas?
profesor.codigoProf = materiaProfesor.codigoProf1
materiaProfesor.codigoMat2 = materia.codigoMat
Comando
Select, where
Sintaxis
select profesor.codigoProf, profesor.nombre , materia.codigoMat, materia.nombre from profesor, materia, materiaProfesor where profesor.codigoProf = materiaProfesor.codigoProf1 and materiaProfesor.codigoMat2 = materia.codigoMat
9. Visualizar las materias que no tienen docente asignado.
Análisis
¿Qué desea consultar y de qué tablas?
materia.codigoMat, materia.nombre
¿Qué tablas se ven afectadas o involucradas?
Tabla materia
Tabla profesor
¿Cómo se relacionan las tablas?
materia.codigoMat = materiaProfesor.codigoMat2
Comando
Select, where
Sintaxis
select materia.codigoMat, materia.nombre from materia, materiaProfesor where materia.codigoMat not in(select materiaProfesor.codigoMat2 from materiaProfesor)
10. Visualizar que docentes no tienen materias asignadas.
Análisis
¿Qué desea consultar y de qué tablas?
profesor.codigoProf, profesor.nombre
¿Qué tablas se ven afectadas o involucradas?
Tabla profesor
Tabla materiaProfesor
¿Cómo se relacionan las tablas?
profesor.codigoProf = materiaProfesor.codigoProf1
Comando
Select, where
Sintaxis
select profesor.codigoProf, profesor.nombre from profesor where profesor.codigoProf not in(select materiaProfesor.codigoProf1 from materiaProfesor)
11. Visualizar el estudiante con las materias que tiene matriculadas y que docentes las dicta.
Análisis
¿Qué desea consultar y de qué tablas?
estudiante.codigoEs, estudiante.nombre, materia.codigoMat, materia.nombre, profesor.codigoProf, profesor.nombre
¿Qué tablas se ven afectadas o involucradas?
Tabla estudiante
Tabla profesor
Tabla materia
Tabla materiaProfesor
Tabla estudianteMateria
¿Cómo se relacionan las tablas?
estudiante.codigoEs = estudianteMateria.codigoEs1
estudianteMateria.codigoMat1 = materia.codigoMat
materia.codigoMat = materiaProfesor.codigoMat2
materiaProfesor.codigoProf1 = profesor.codigoProf
Comando
Select, where
Sintaxis
select estudiante.codigoEs, estudiante.nombre, materia.codigoMat, materia.nombre, profesor.codigoProf, profesor.nombre from estudiante, profesor, materia, materiaProfesor, estudianteMateria where estudiante.codigoEs = estudianteMateria.codigoEs1 and estudianteMateria.codigoMat1 = materia.codigoMat and materia.codigoMat = materiaProfesor.codigoMat2 and materiaProfesor.codigoProf1 = profesor.codigoProf
Nota: realizar el análisis de cada punto y su respectiva sintaxis.