Partes de una fecha
SQL · Unidad 14: Textos y fechas
- Plan completo
- SQL
- 11 ejercicios
La escuela, otra vez. Cada mes se felicita a quien cumple años. ¿Quién cumple en enero? La respuesta está dentro de la columna nacimiento, que ya conoces, entre sus dos guiones.
STRFTIME saca partes de una fecha. Primero va un molde y después la fecha. En el molde, %Y es el año, %m es el mes y %d es el día, y la mayúscula cuenta.
Lo que devuelve es un texto, 01 y no 1.
SELECT nombre, nacimiento,
STRFTIME('%m', nacimiento) AS mes
FROM estudiantes
WHERE grado >= 2
ORDER BY mes;Devuelve
| nombre | nacimiento | mes |
|---|---|---|
| Julia | 2011-01-30 | 01 |
| Leo | 2010-04-17 | 04 |
| Hugo | 2011-06-21 | 06 |
| Martina | 2010-09-09 | 09 |
| Sara | 2010-12-25 | 12 |
El resto de la explicación está en la lección, que es del plan completo.
Ejercicios de esta lección
Se hacen en la app, que los corrige al momento y explica por qué.
1. Predice la salida
Lucas y Emma, los dos de primer grado, nacieron el 14 de marzo y el 2 de noviembre de 2012. ¿Qué devuelve esta consulta?
2. Completa el código
La pregunta con la que empezó la lección. ¿Quién cumple años en enero? Completa el molde y el mes.
3. Encuentra el bug
La lista de tercer grado tenía que traer el mes en que nació cada uno. Leo es de abril, Martina de septiembre y Sara de diciembre. Los tres salen con
00. ¿Qué línea tiene el problema?4. Ordena las líneas
La escuela cuelga en el pasillo el calendario de cumpleaños, de enero a diciembre, sin mirar en qué año nació cada uno. El molde
'%m-%d'da el mes y el día, con su guion en medio. Ordena la consulta. Sobran dos líneas.5. Opción múltiple
Sara, de tercer grado, nació el 25 de diciembre de 2010. Hoy, 15 de enero de 2026, ¿qué da para ella la resta de los años, y cuántos años tiene?
6. Completa el código
El torneo entre escuelas reparte las categorías por la edad que cada uno tendrá el 30 de junio de 2026. Completa la consulta para Lucas y Emma, los de primer grado, que nacieron el 14 de marzo y el 2 de noviembre de 2012.
7. Encuentra el caso que falla
La edad de hoy, 15 de enero de 2026, para segundo grado. Quien cumple años hoy ya tiene un año más. Esta consulta acierta con Hugo y con Julia. ¿Con cuál de estos cambios da una edad que no es?
8. Opción múltiple
Copias la consulta de los cumpleaños de enero en un servidor MySQL, y falla con un mensaje que dice que la función
STRFTIMEno existe. ¿Qué haces?9. Predice la salida
Alguien acorta el molde y agrupa solo por el mes. Los datos son los mismos, un préstamo de diciembre de 2025 y siete de enero de 2026. ¿Qué devuelve esta consulta?
10. Ordena las líneas
De los préstamos que ya volvieron, ¿cuántos habían salido cada mes? Ordena la consulta, con el mes más reciente primero. Sobran dos líneas.
11. Escribe el código
La bibliotecaria cierra sus cuentas mes a mes, y le estorban los préstamos que salieron un mes y volvieron otro. Escribe una consulta con cuatro columnas en este orden,
id,socio,prestadoydevuelto, de esos préstamos. Compara el año y el mes juntos. Un libro que hubiera salido en enero de 2025 y vuelto en enero de 2026 también tiene que salir.
Se abre en el navegador. Esta lección es del plan completo; la primera unidad de cada curso es gratis.