none
realizar una consulta en sql RRS feed

  • Pregunta

  • hola tengo que hacer dicha consulta: 
    1.        Mostrar el promedio de desaprobados en cada instacia(seria en trabajo paractico, parcial y recuperatorio).

    y nose como realizarla. quisiera saber si me pueden ayudar.

    aqui le paso el der: 

    aqui va la consulta(que no esta bien hecha):

    select tipo.nombre, (sum(Evaluacion.nota)*100/COUNT(alumno.nombre)) 
    from alumno inner join Evaluacion on alumno.idAlumno = Evaluacion.idAlumno inner join tipo on Evaluacion.idTipo=tipo.idTipo
    where evaluacion.nota < 4 
    group by tipo.nombre

    lunes, 3 de julio de 2017 18:53

Respuestas

  • Me parece que el enunciado es ambiguo: "mostrar el promedio de desaprobados...", ¿promedio de notas desaprobatorias por tipo de evaluación? ¿promedio de alumnos desaprobados por tipo de evaluación sobre el total?

    - Promedio de notas desaprobatorias por tipo de evaluación

    SELECT tipo.nombre, AVG(Evaluacion.nota) AS Promedio

    - Promedio de alumnos desaprobados por tipo de evaluación sobre el total (representación de impactos)

    Significa que si tienes, por ejemplo, 5 desaprobados en trabajo practico, 10 en parcial y 5 en recuperatorio, el resultado deberá ser 25%, 50% y 25% respectivamente.

    SELECT
        t1.nombre, SUM(t1.Cuenta) / MAX(t1.T) * 100 AS Prom
    FROM
        (
    	   SELECT tipo.nombre, COUNT(*) AS Cuenta, COUNT(*) OVER() AS T
    	   FROM 
    		  Evaluacion
    		  INNER JOIN tipo ON Evaluacion.idTipo = tipo.idTipo
    	   WHERE evaluacion.nota < 4
        ) t1
    GROUP BY t1.nombre;
    GO


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.

    martes, 4 de julio de 2017 4:53