none
sacar el promedio por estudiante RRS feed

  • Pregunta

  • Tabla Notas

    Num_Estudiante    Codigo_Clase   n1  n2   n3   n4  n5

           100                     R1             A   B     A      C    A

           100                     R2             A   C     A      A    A

           100                     R3             B   B     B      C    F

           101                     R1             A   B     A      C    A

          101                     R2             A   C     A      C    A

           101                     R3             c   c     B      C    B

    la A=4   B=3    C=2   D=1    F=0

    domingo, 6 de mayo de 2018 18:17

Todas las respuestas

  • Hola Efrain Diaz:

    Como tampoco expresas muy detallado lo que esperas, yo he imaginado esto.

    SELECT O.num_Estudiante, O.CODIGO_CLASE, O.N1, O.N2, O.N3, O.N4, O.N5,  SUM(O.N1+O.N2+O.N3+O.N4+O.N5)/5 AS MEDIA ,
     CASE SUM(O.N1+O.N2+O.N3+O.N4+O.N5)/5 WHEN  4 THEN 'A' WHEN 3  THEN 'B' WHEN 2 THEN 'C' WHEN 1 THEN 'D' ELSE 'F' END AS MEDIALETRA
    	FROM (
    	SELECT N.NUM_ESTUDIANTE, N.CODIGO_CLASE, (CASE N1 WHEN 'A' THEN 4 
    		WHEN 'B' THEN 3 WHEN 'C' THEN 2 WHEN 'D' THEN 1 WHEN 'F' THEN 0 END) AS N1,
    		(CASE N2 WHEN 'A' THEN 4 
    		WHEN 'B' THEN 3 WHEN 'C' THEN 2 WHEN 'D' THEN 1 WHEN 'F' THEN 0 END) AS N2,
    		(CASE N3 WHEN 'A' THEN 4 
    		WHEN 'B' THEN 3 WHEN 'C' THEN 2 WHEN 'D' THEN 1 WHEN 'F' THEN 0 END) AS N3,
    		(CASE N4 WHEN 'A' THEN 4 
    		WHEN 'B' THEN 3 WHEN 'C' THEN 2 WHEN 'D' THEN 1 WHEN 'F' THEN 0 END) AS N4,
    		(CASE N5 WHEN 'A' THEN 4 
    		WHEN 'B' THEN 3 WHEN 'C' THEN 2 WHEN 'D' THEN 1 WHEN 'F' THEN 0 END) AS N5
    
    		FROM NOTAS N
    			
    	) AS O
    GROUP BY O.num_Estudiante, O.CODIGO_CLASE, O.N1, O.N2, O.N3, O.N4, O.N5
    ORDER BY num_Estudiante, CODIGO_CLASE
    

    Un saludo

    domingo, 6 de mayo de 2018 19:38