Un 10 de dos créditos
- O(n) · Media
- Plan completo
- SQL
- agrupar
- uniones
- decimales
Enunciado
Hugo tiene un 10 en Música, un 8 en Historia y un 5.5 en Matemáticas, y su promedio es 7.83. La escuela no se lo cree: Música vale 2 créditos y Matemáticas, 5. En el promedio ponderado cada nota cuenta tantas veces como créditos tiene su curso: se suma cada nota multiplicada por sus créditos y se divide entre el total de créditos. El de Hugo es 7.15.
De cada estudiante con alguna nota puesta, muestra su estudiante_id, los créditos que ya tiene calificados y su promedio ponderado, redondeado a 2 decimales, en ese orden. Un curso con la nota pendiente todavía no pone ni su nota ni sus créditos.
Lo que tiene que devolver
Estas filas, en cualquier orden
| estudiante_id | calificados | ponderado |
|---|---|---|
| 1 | 8 | 7.94 |
| 2 | 9 | 7.94 |
| 3 | 10 | 7.15 |
| 4 | 5 | 7 |
| 5 | 9 | 8.44 |
| 6 | 9 | 5.11 |
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 n.estudiante_id, n.nota,
c.creditos
FROM notas n
JOIN cursos c
ON n.curso_id = c.idSe 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)
- ¿De dónde nos piden?SQL · agrupar · uniones · nulos
- ¿De dónde son los libros?SQL · agrupar · uniones · ordenar
- ¿Para cuántas nóminas alcanza?SQL · agrupar · uniones · decimales
- ¿Quién debe notas?SQL · agrupar · uniones · nulos
- Donde hay más de unoSQL · agrupar · nulos
- Dos veces el mismo no cuentaSQL · agrupar · ordenar