Con eso, estimad@, estás generando el promedio de todos sin discriminaciones. Es decir, no estás determinando cual es el promedio de cada uno de ellos, sino uno global.
Tu problema es de manual básico: Tienes que agrupar por matricula, o no sabrás cual es el promedio de cada alumno. Ordenar no aporta nada.
Código SQL:
Ver originalSELECT matricula, avg(cal1b) promedio
FROM calificaciones
WHERE matricula IN(116011,116014,116016, 216012,216013,216015)
GROUP BY matricula;
TE recomiendo leer con atención cualquier manual básico de SQL, haciendo hincapié en el uso de funciones agrupadas, sin pretender ofender o ser peyorativo. Ten en cuenta que por ALGO se las denomina "agrupadas" o "de agrupación".