Saltar al contenido

La boleta en una fila

Enunciado

En notas cada nota ocupa su propia fila. La boleta que se imprime no: lleva una fila por estudiante y una casilla por curso. En esta hoja van las tres materias de aula, Matemáticas, Historia y Ciencias, que son los cursos 1, 2 y 3. Música y Ajedrez van en otra.

Muestra el nombre de cada estudiante y sus notas de Matemáticas, de Historia y de Ciencias, en ese orden, por orden alfabético de nombre.

En la hoja está todo el mundo, también quien no lleva ninguno de los tres cursos. La casilla de un curso que no lleva queda vacía, y la de una nota pendiente también: en el papel no se distinguen.

Lo que tiene que devolver

Estas filas, en este orden

nombrematematicashistoriaciencias
Emma9.5NULL6
Hugo5.58NULL
Julia7NULLNULL
Leo4NULL6.5
Lucas8.57NULL
MartinaNULL98.5
SaraNULLNULLNULL

Es lo que sale con los datos de la base de práctica del reto. Los nombres de las columnas no cuentan, las tuyas pueden llamarse como quieras: cuenta cuántas son y en qué orden van. Además de esta, el reto tiene pruebas ocultas con otros datos, que se revelan al enviar tu solución.

Empiezas con esto

SQL

SELECT e.nombre, n.curso_id,
  n.nota
FROM estudiantes e
JOIN notas n
  ON n.estudiante_id = e.id
ORDER BY e.nombre;
Resolver este reto

Se abre en el navegador, con el editor y las pruebas. Este reto es del plan completo; los de O(1) y O(log n) son gratis.

Más retos de O(n log n)

Ver todos los retos →