Está en la página 1de 6

UNIDAD ACADÉMICA DE INFORMÁTICA, CIENCIEAS DE LA

COMPUTACIÓN E INNOVACIÓN TECNOLÓGICA

CARRERA DE INGENIERÍA DE SOFTWARE

ASIGNATURA
GESTIÓN DE BASES DE DATOS

PRACTICA
DESARROLLO DE PRACTICAS DE EJERCICIOS DE CONSULTAS
BASE DE DATOS ESTANDARIZADA
JOIN

INTEGRANTES:
Nelson wachapa

NOVIEMBRE - 2022
Datos informativos:

Materia: Gestión de Bases de Datos


Ciclo: Quinto
Tema: Ejercicios de consulta. JOIN.
Grupos: Máximo de 4 personas
Fecha de entrega: Acorde a fecha estipulado
Valoración: 10 puntos
Docente: Ing. Leopoldo Pauta A.

Objetivo

Aplicar concepciones de los operadores JOIN y sus variaciones como soporte matemático para una aplicación en
comandos SQL.

Entregables

Establecer a partir de las bases de datos de SGA lo siguiente:

1. Seleccionar el promedio de notas por cada docente de la base de datos.


select doc_nombre, AVG (evaluaciones.eva_nota) as eva_nota from evaluaciones
inner join docentes on docentes.doc_codigo = evaluaciones.doc_codigo
group by doc_nombre

2. Seleccionar la cantidad de evaluaciones por cada docente de la base de datos.


select doc_nombre, AVG (evaluaciones.eva_total) as eva_notal from evaluaciones
inner join docentes on docentes.doc_codigo = evaluaciones.doc_codigo
group by doc_nombre
3. Seleccionar el promedio de notas por cada materia y docente de la base de datos.
SELECT docentes.doc_nombre, materias.mat_nombre,
AVG(evaluaciones.eva_nota)
as n_pro_docente,
avg(evaluaciones.eva_total)
AS n_evaluaciones_promedio
FROM docentes
INNER JOIN evaluaciones
ON docentes.doc_codigo =evaluaciones.doc_codigo
INNER JOIN materias
ON materias.mat_codigo=evaluaciones.mat_codigo GROUP BY docentes.doc_nombre,
materias.mat_nombre

4. Seleccionar la cantidad de evaluaciones por cada materia y docente de la base de datos.


SELECT docentes.doc_nombre, materias.mat_nombre,
count (docentes.doc_codigo)
as evaluacion_docente,
count (materias.mat_codigo)
AS evaluacion_materia_total
FROM docentes
INNER JOIN evaluaciones
ON docentes.doc_codigo =evaluaciones.doc_codigo
INNER JOIN materias
ON materias.mat_codigo=evaluaciones.mat_codigo GROUP BY docentes.doc_nombre,
materias.mat_nombre
5. Seleccionar los 10 mejores estudiantes según el promedio de notas.
Guía:
SELECT top 10 estudiantes.est_codigo
as codigo_estudiante,estudiantes.est_nombre as nombre_estudiante,
AVG(evaluaciones.eva_total)
as promedio
FROM estudiantes
INNER JOIN evaluaciones
on estudiantes.est_codigo = evaluaciones.est_codigo
inner join materias
ON materias.mat_codigo=evaluaciones.mat_codigo GROUP BY estudiantes.est_codigo,
estudiantes.est_nombre

6. Seleccionar los estudiantes que tengan el mayor promedio del curso.


select estudiantes.est_nombre AS estudiantes, AVG(eva_total) AS promedio_curso
FROM evaluaciones
INNER JOIN estudiantes ON evaluaciones.est_codigo = estudiantes.est_codigo
GROUP BY estudiantes.est_nombre ORDER BY AVG(eva_total) DESCcodigo

7. Seleccionar los estudiantes que tengan el promedio mayor o igual al promedio de todos los estudiantes.

sELECT AVG(eva_total) AS "promedio_mayor" FROM evaluaciones

SELECT est_nombre AS estudiantes, AVG(eva_total) AS promedio_mayor_o_igual_a_5


FROM evaluaciones INNER JOIN
estudiantes ON evaluaciones.est_codigo = estudiantes.est_codigo
GROUP BY estudiantes.est_nombre HAVING AVG(eva_total) >=5
8. Seleccionar por cada estudiante el código, nombre, su promedio, promedio general del curso y diferencia
entre el promedio del curso con su promedio.
SELECT AVG(eva_total) AS "promedio_curso" FROM evaluaciones
SELECT est_nombre AS estudiantes, AVG(eva_total) AS promedio, (AVG(eva_total)-5)
AS diferencia FROM evaluaciones INNER JOIN estudiantes ON evaluaciones.est_codigo =
estudiantes.est_codigo
GROUP BY estudiantes.est_nombre

9. Seleccionar los estudiantes que tengan un promedio mayor o igual al promedio de los estudiantes de su
mismo sexo.
SELECT est_sexo AS género, AVG(eva_total) AS promedio FROM evaluaciones
INNER JOIN estudiantes
ON evaluaciones.est_codigo = estudiantes.est_codigo
GROUP BY estudiantes.est_sexo
10. Seleccionar los estudiantes que se hayan evaluado en una cantidad de materias determinada.
SELECT est_nombre AS estudiante, COUNT (evaluaciones.est_codigo) AS "numero_asignaturas"
FROM estudiantes INNER JOIN evaluaciones ON evaluaciones.est_codigo =
estudiantes.est_codigo GROUP BY estudiantes.est_nombre

11. Consultas SQL, se solicitan:


Investigar sobre el comando HAVING
Investigar sobre el comando SELECT TOP 10

Nota: Presentar las capturas de pantalla de lo solicitado en la consulta.

Desarrollo
1.

También podría gustarte