Cuando trabajamos con bases de datos, muchas veces necesitamos calcular la diferencia entre dos fechas, ya sea en días, meses o años. MySQL nos ofrece una función muy útil para esto: TIMESTAMPDIFF. En este artículo, te explicaré qué es, cómo funciona y cómo aplicarlo en diferentes escenarios.
¿Qué es TIMESTAMPDIFF?
La función TIMESTAMPDIFF()
en MySQL nos permite calcular la diferencia entre dos fechas en distintas unidades de tiempo. Su sintaxis es la siguiente:
TIMESTAMPDIFF(unidad, fecha_inicio, fecha_fin)
Donde:
- unidad: Especifica en qué unidad queremos la diferencia (AÑO, MES, DÍA, HORA, MINUTO, SEGUNDO, etc.).
- fecha_inicio: La fecha inicial desde la que se calculará la diferencia.
- fecha_fin: La fecha final hasta donde se calculará la diferencia.
Ejemplos de Uso de TIMESTAMPDIFF
1. Calcular la edad de una persona

Si en nuestra base de datos tenemos un campo fecha_nacimiento
, podemos calcular la edad de una persona así:
SELECT TIMESTAMPDIFF(YEAR, fecha_nacimiento, CURDATE()) AS edad
FROM usuarios;
Esto nos devolverá la edad en años.
2. Saber cuánto tiempo lleva un usuario registrado
Si tenemos un campo fecha_alta
en una tabla de clientes o socios, podemos calcular cuánto tiempo llevan registrados:
SELECT nombre, apellido, TIMESTAMPDIFF(YEAR, fecha_alta, CURDATE()) AS tiempo_registrado
FROM clientes;
3. Calcular la diferencia en días entre dos fechas
Para obtener la cantidad de días entre dos fechas, podemos hacer lo siguiente:
SELECT TIMESTAMPDIFF(DAY, '2024-01-01', '2025-02-21') AS dias_diferencia;
Esto devolverá 416
porque hay 416 días entre esas dos fechas.
Consideraciones Finales
- La función
TIMESTAMPDIFF
siempre redondea hacia abajo, por lo que si una diferencia de meses está incompleta, no se contará el mes parcial. - Es una alternativa sencilla para calcular diferencias de tiempo sin necesidad de restar fechas manualmente.
- Puedes usar
CURDATE()
oNOW()
según si deseas comparar con la fecha actual o la fecha y hora actuales.
Si estás trabajando con bases de datos en MySQL y necesitas hacer cálculos de tiempo, TIMESTAMPDIFF es una herramienta esencial que te ahorrará muchas complicaciones. ¡Prueba con distintos valores y mejora tus consultas SQL!.
¿QUÉ TE HA PARECIDO EL ARTÍCULO? Danos tu opinión al final de la página.
Deja tu comentario y ayúdanos a crecer.
¡SÍGUENOS EN TUS REDES FAVORITAS!
AYUDANOS A CRECER Y QUE LLEGUEMOS A TODAS LAS PERSONAS QUE NOS NECESITANA. SÍGUENOS EN TUS REDES.
Entra AQUÍ y elíge donde seguirnos.

NUESTRAS ÚLTIMAS PUBLICACIONES
- Proyectos que puedes empezar para aprender a programar (Academia San Roque)
- 15 ejercicios básicos en R (con soluciones)
- 📘 5 Ejercicios Sencillos de Programación en R (con soluciones)
- Guía para Aprender a Estudiar Programación con las 10 Claves de la Autodisciplina
- Serializar una lista de personas (nombre, apellido, DNI) en Java y guardarla en un archivo binario
- Simulacro de Examen — Fundamentos de Programación (Laboratorio)
- Reflexiones en Academia SanRoque: La importancia de la motivación, el esfuerzo y el aprendizaje en la educación y la formación
- CHECK Constraint en Oracle SQL: garantiza la calidad de tus datos paso a paso
- Simulacro #4 – Examen de C++ / Estructuras de Datos
ELIGE TU RED FAVORITA Y SÍGUENOS.
AYUDANOS A CRECER Y A LLEGAR A TODAS LAS PERSONAS QUE NOS NECESITAN.
Contenido restringido
Comments are closed