Parcial 2
RESTAURAR LA BASE DE DATOS MATRICULA2.SQL
- Debe diseñar el modelo entidad relación y el modelo relacional.
- Realizar el análisis en cada uno de los puntos.
BASE DE DATOS 'Matricula2'
MODELO ENTIDAD RELACIÓN Y RELACIONAL.
Archivo Tee.
TABLAS CON INFORMACIÓN

1. Que profesores dictan en la carrera de ingeniería de sistemas.
Análisis:
1. Que se desea Visualizar y de que tablas:
carrare.carrera
profesor.nombre
2. Que tablas están involucradas: Carrera, Profesor
3. Que condiciones tenemos: carrera.codcarre='001'
4. Como se relacionan las tablas:
profesor.codprofe=profcar.codprofe
profcar.codcarre=carrera.codcarre
5. Comando se debe utilizar: Select, Where
Sintaxis:
>>> select carrera.carrera 'CARRERA', profesor.codprofe 'CODIGO',profesor.nombre 'PROFESOR' from profesor, carrera, profcar where profesor.codprofe=profcar.codprofe and profcar.codcarre=carrera.codcarre and carrera.codcarre='001';
2. Que alumnos están matriculados en la carrera de Derecho y cuales profesores dictan en esa carrera.
Análisis:
1. Que se desea Visualizar y de que tablas:
alumno.nombre,
carrera.carrera
2. Que tablas están involucradas: alumno, carrera.
3. Que condiciones tenemos: matricula.cocarre='004'
4. Como se relacionan las tablas:
alumno.codestu=matricula.codestu
carrera.codcarre=matricula.codcarre
matricula.codprofe=profesor.codprofe
5. Comando se debe utilizar:
Sintaxis:
>>> select alumno.nombre 'ALUMNO', carrera.carrera 'CARRERA', profesor.nombre 'PROFESOR' from alumno, profesor, carrera, matricula where alumno.codestu=matricula.codestu and carrera.codcarre=matricula.codcarre and matricula.codprofe=profesor.codprofe and matricula.codcarre='004';
3. Cuánto les costó el semestre de los alumnos que se matricularon en Veterinaria.
Análisis:
1. Que se desea Visualizar y de que tablas:
carrera.carrera
matricula.valorsemestre
2. Que tablas están involucradas: carrera, matricula
3. Que condiciones tenemos: matricula.codcarre='008'
4. Como se relacionan las tablas:
carrera.codcarre=matricula.codcarre
5. Comando se debe utilizar: distinct, select, where.
Sintaxis:
>>> select distinct carrera.carrera 'CARRERA', matricula.valorsemestre 'VALOR SEMESTRE' from carrera,matricula where carrera.codcarre=matricula.codcarre and matricula.codcarre='008';
4. A que alumnos les tocaría ver clases con el profesor Portacio Cartagena.
Análisis:
1. Que se desea Visualizar y de que tablas:
alumno,
2. Que tablas están involucradas: Alunmo, Matricula, Profesor
3. Que condiciones tenemos: matricula.codprofe='003'
4. Como se relacionan las tablas:
alumno.codestu=matricula.codestu
matricula.codprofe=profesor.codprofe
5. Comando se debe utilizar: Select, Where
Sintaxis:
>>> select * from alumno,matricula,profesor where alumno.codestu=matricula.codestu and matricula.codprofe=profesor.codprofe and matricula.codprofe='003';
5. cuál es el valor del semestre más alto.
Análisis:
1. Que se desea Visualizar y de que tablas:
Valor mas Alto del Semestre matricula.valorsemestre
2. Que tablas están involucradas: Matricula.
3. Que condiciones tenemos: Max(valorsemestre)
4. Como se relacionan las tablas: N/A
5. Comando se debe utilizar: Select.
Sintaxis:
>>> select max(valorsemestre)'VALOR MAS ALTO DEL SEMESTRE' from matricula;
6. Cuál es el promedio del valor de semestre que ha entrado a la cartera de la universidad.
Análisis:
1. Que se desea Visualizar y de que tablas: Valor Promedio del valor de las carreras.
2. Que tablas están involucradas: Matricula.
3. Que condiciones tenemos: AVG(valorsemestre)
4. Como se relacionan las tablas: N/A
5. Comando se debe utilizar: Select, AVG.
Sintaxis:
>>> select avg(valorsemestre)'PROMEDIO DE VALOR DEL SEMESTRE' from matricula;
7. Mostrar los nombres de los estudiantes que comiencen por A o que terminen en R.
Análisis:
1. Que se desea Visualizar y de que tablas:
Nombres que comiencen por A o que terminen en R.
2. Que tablas están involucradas: alumno.
3. Que condiciones tenemos: like 'A%', like '%R';
4. Como se relacionan las tablas: N/A
5. Comando se debe utilizar: Select, Like, or
Sintaxis:
>>> select alumno.nombre from alumno where nombre like 'A%' or nombre like '%R';
8. Total valorsemestre pagado por carrera;
Análisis:
1. Que se desea Visualizar y de que tablas:
carrera.carrera
matricula.valorsemestre
2. Que tablas están involucradas: Carrera, Matricula.
3. Que condiciones tenemos: sum(valorsemestre), group by matricula.codcarre;
4. Como se relacionan las tablas: carrera.codcarre=matricula.codcarre
5. Comando se debe utilizar: Select, Sum, Where, Group by.
Sintaxis:
>>> select carrera.carrera 'CARRERA', sum(valorsemestre) 'VALOR PAGADOD POR CARRERA' from matricula, carrera where carrera.codcarre=matricula.codcarre group by matricula.codcarre;
9. Visualizar los estudiantes que no están matriculados.
Análisis:
1. Que se desea Visualizar y de que tablas:
Alumno.
2. Que tablas están involucradas: Alumno, Matricula
3. Que condiciones tenemos: matricula.codestu is null
4. Como se relacionan las tablas: alumno.codestu=matricula.codestu
5. Comando se debe utilizar: Select, Left Join, On , Where.
Sintaxis:
>>> select * from alumno left join matricula on alumno.codestu=matricula.codestu where matricula.codestu is null;