Parte 1

TALLER CONSULTAS RELACIONALES

Con la información de la base de datos de la Institución realizar las siguientes consultas:  


Modelo entidad relación

Archivo TXT

1. Visualizar los estudiantes con sus acudientes

sintaxis

select estudiante.nombre'NOMBRE DEL ESTUDIANTE',acudiente.nombre'NOMBRE DEL ACUDIENTE'from estudiante inner join estudianteacudiente on estudiante.codestudiante=estudianteacudiente.codestudiante inner join acudiente on acudiente.codacudiente=estudianteacudiente.codacudiente;

2. Que estudiantes no tienen acudiente asignado

sintaxis

select estudiante.codestudiante,estudiante.nombre,estudianteacudiente.codestudiante from estudiante

-> left join estudianteacudiente on estudiante.codestudiante=estudianteacudiente.codestudiante where estudianteacudiente.codestudiante is null;

3. Que acudientes no matricularon sus hijos en la institución

sintaxis

select acudiente.codacudiente,acudiente.nombre from acudiente left join estudianteacudiente on acudiente.codacudiente=estudianteacudiente.codacudiente where estudianteacudiente.codacudiente is null;

4. Visualizar las materias que matriculó el estudiante 00001

sintaxis

select materia.nombre'NOMBRE DE LA MATERIA',estudiante.codestudiante from materia right join estudiantemateria on materia.codmateria=estudiantemateria.codmateria right join estudiante on estudiantemateria.codestudiante=estudiante.codestudiante where estudiante.codestudiante=1 or estudiante.codestudiante is null;

5. Visualizar los estudiantes con las materias que matricularon

sintaxis

select estudiante.nombre'NOMBRE DEL ESTUDIANTE',materia.nombre'NOMBRE DE LA MATERIA' from estudiante inner join estudiantemateria on estudiante.codestudiante=estudiantemateria.codestudiante inner join materia on materia.codmateria=estudiantemateria.codmateria order by estudiante.nombre asc;

en este caso le agregamos el order by estudiante.nombre asc; para que los nombres del estudiante queden de forma ordenada

MariaDB [gestionescolar]> select estudiante.nombre'NOMBRE DEL ESTUDIANTE',materia.nombre'NOMBRE DE LA MATERIA' from estudiante inner join estudiantemateria on estudiante.codestudiante=estudiantemateria.codestudiante inner join materia on materia.codmateria=estudiantemateria.codmateria order by estudiante.nombre asc into outfile 'c:/xampp/base de dato escolar.xls'; into outfile 'c:/xampp/base de dato escolar.xls';

Los datos visualizados es tan grande que no salio todos los datos al momento de tomar el pantallaso, por esto usamos into outfile 'c:/xampp/base de dato escolar.xls'; para guardar los datos en un archivo de excel

6. Visualizar un listado de los estudiantes que no se han matriculado

sintaxis

select estudiante.codestudiante,estudiante.nombre from estudiante left join estudiantemateria on estudiante.codestudiante=estudiantemateria.codestudiante where estudiantemateria.codestudiante is null;

7. Visualizar un listado de las materias a las que ningún estudiante se matriculó.

sintaxis

select materia.codmateria,materia.nombre,estudiantemateria.codmateria from materia right join estudiantemateria on materia.codmateria=estudiantemateria.codmateria where estudiantemateria.codestudiante is null;

8. Visualizar los docentes con las materias que dictan

sintaxis

select profesor.nombre'NOMBRE DEL PROFESOR',materia.nombre'NOMBRE DE LA MATERIA' from profesor inner join materiaprofesor on profesor.codprofesor=materiaprofesor.codprofesor inner join materia on materiaprofesor.codmateria=materia.codmateria;

9. Visualizar las materias que no tienen docente asignado.

sintaxis

select materia.nombre'NOMBRE DE LA MATERIA' from materia left join materiaprofesor on materia.codmateria=materiaprofesor.codmateri

a where materiaprofesor.codmateria is null;

10. Visualizar que docentes no tienen materias asignadas.

sintaxis

select profesor.nombre'NOMBRE DEL PROFESOR' from profesor left join materiaprofesor on profesor.codprofesor=materiaprofesor.codpro

fesor where materiaprofesor.codmateria is null;

11. Visualizar el estudiante con las materias que tiene matriculadas y que docentes las dicta.

sintaxis

select estudiante.nombre'NOMBRE DEL ESTUDIANTE',materia.nombre'NOMBRE DE LA MATERIA',profesor.nombre'PROFESOR'from estudiante inner join estudiantemateria on estudiante.codestudiante = estudiantemateria.codestudiante inner join materia on estudiantemateria.codmateria=materia.codmateria inner join materiaprofesor on materia.codmateria=materiaprofesor.codmateria inner join profesor on materiaprofesor.codprofesor=profesor.codprofesor order by estudiante.nombre;


en este caso ordenamos los datos para darle mejor visualización 

guardamos los datos en un archivo de excel para poder apreciar la totalidad de los datos 

Nota: realizar el análisis de cada punto y su respectiva sintaxis.  

¡Crea tu página web gratis! Esta página web fue creada con Webnode. Crea tu propia web gratis hoy mismo! Comenzar