|
@@ -41,6 +41,8 @@ switch ($query['query']) {
|
|
|
case 'c-fin':
|
|
|
# Añade 'TIENE CALIFICACIÓN'
|
|
|
$headers[] = 'TIENE CALIFICACIÓN';
|
|
|
+ $headers[] = 'PROMEDIO_GENERAL';
|
|
|
+ $headers[] = 'DESVIACIÓN';
|
|
|
# Ejecuta el query de 'c-calif' para obtener la calificación
|
|
|
$calificacion = $db
|
|
|
->where('clave', 'c-calif')
|
|
@@ -88,7 +90,18 @@ foreach ($data as $line) {
|
|
|
|
|
|
// si encuentra el result, añade 'Sí' a la última columna
|
|
|
$line['TIENE CALIFICACIÓN'] = count($calificacion) > 0 ? 'Sí' : 'No';
|
|
|
-
|
|
|
+ preg_match('/-(\d+)$/', $line['shortname'], $matches);
|
|
|
+ $materia = $sgi_db->querySingle('SELECT
|
|
|
+ AVG(amg."Calificacion_calif") AS calificación,
|
|
|
+ STDDEV(amg."Calificacion_calif") AS desviación
|
|
|
+ FROM "Alumno_Materia_Calificacion" amg
|
|
|
+ WHERE amg."Materia_id" = :materia_id
|
|
|
+ GROUP BY amg."Materia_id"
|
|
|
+ ORDER BY AVG(amg."Calificacion_calif")',
|
|
|
+ ['materia_id' => intval($matches[1])]
|
|
|
+ );
|
|
|
+ $line['PROMEDIO_GENERAL'] = $materia['calificación'] ?? 0;
|
|
|
+ $line['DESVIACIÓN'] = $materia['desviación'] ?? 0;
|
|
|
break;
|
|
|
}
|
|
|
|