¿Qué día cerramos?
- O(n²) · Muy difícil
- Plan completo
- SQL
- fechas
- agrupar
- condicionales
Enunciado
El dueño va a cerrar un día a la semana para descansar, y antes quiere ver cuánto se mueve la tienda cada día: cuántos pedidos y cuántas unidades han caído en lunes, en martes y así hasta el domingo.
El molde '%w' de STRFTIME da el día de la semana como un texto de '0' a '6', y el '0' es el domingo. Cuentan los pedidos con fecha hasta hoy, 15 de enero de 2026. El del día 20 está mal tecleado, y ese día cae en martes: contarlo le daría a la tienda un martes que no tuvo. Muestra el nombre del día en minúsculas (lunes, martes, miércoles, jueves, viernes, sábado, domingo), sus pedidos y sus unidades, en ese orden y de lunes a domingo. Un día de la semana sin pedidos no sale.
Lo que tiene que devolver
Estas filas, en este orden
| dia | hechos | unidades |
|---|---|---|
| lunes | 2 | 4 |
| miércoles | 1 | 1 |
| jueves | 2 | 3 |
| viernes | 1 | 10 |
| sábado | 2 | 3 |
| domingo | 3 | 8 |
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 STRFTIME('%w', fecha) AS num,
COUNT(*) AS hechos,
SUM(cantidad) AS unidades
FROM pedidos
GROUP BY STRFTIME('%w', fecha)
ORDER BY num;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²)
- Cada cuánto vuelvenSQL · ventanas · fechas · agrupar
- De cada 100 de nóminaSQL · ventanas · decimales
- El escalón de arribaSQL · ventanas · subconsultas
- El primero con el últimoSQL · ventanas · uniones · agrupar
- El tercer selloSQL · ventanas · uniones · fechas
- Empezar por abajoSQL · modificar datos · subconsultas