Los que faltan en la lista
- O(n log n) · Difícil
- Plan completo
- SQL
- subconsultas
- uniones
- agrupar
Enunciado
La coordinadora quiere saber a cuántos estudiantes puede ofrecerles todavía cada curso: los que no lo llevan. Llevar un curso es estar inscrito, con nota o sin ella.
Muestra el nombre de cada curso y cuántos estudiantes de la escuela no lo llevan, en ese orden. Cuentan todos los estudiantes, también quien no lleva ningún curso. Al curso que nadie lleva le falta la escuela entera, y uno que llevaran todos saldría con un 0.
Primero el curso al que le falta más gente; si dos empatan, por nombre.
Lo que tiene que devolver
Estas filas, en este orden
| nombre | faltan |
|---|---|
| Ajedrez | 7 |
| Música | 5 |
| Historia | 4 |
| Ciencias | 3 |
| Matemáticas | 2 |
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 c.nombre,
COUNT(*) AS inscritos
FROM notas n
JOIN cursos c
ON n.curso_id = c.id
GROUP BY c.id, c.nombre;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)
- Por debajo de los suyosSQL · subconsultas · nulos
- Profesores de manga anchaSQL · subconsultas · conjuntos · uniones
- Quién manda aquíSQL · uniones · agrupar
- Sábado de inventarioSQL · subconsultas · agrupar · uniones
- Suelen ir juntosSQL · uniones · agrupar
- Un estudiante, un votoSQL · subconsultas · agrupar