Hoy me vi en la necesidad de calcular el tiempo transcurrido entre dos fechas en el motor de base de datos MySQL.
El problema era calcular los años que han pasado desde una fecha hasta hoy.
Para seleccionar la diferencia en años, meses, o días podemos utilizar timestampdiff. Es una función que toma 3 argumentos:
Veamos algunos ejemplos
Para saber cuántos años han pasado en MySQL podemos hacer esto:
SELECT TIMESTAMPDIFF(YEAR, '1997-06-21', '2018-05-07') AS años_transcurridos;
Eso daría un resultado de 20, como se puede ver a continuación:
En fin, si no nos importa, los resultados son los mismos:
Para hacerlo con meses, es por ejemplo:
SELECT TIMESTAMPDIFF(MONTH, '1997-06-21', '2018-05-07') AS meses_transcurridos;
Si lo ejecuto:
Igualmente podemos calcularlo con columnas de una base de datos, como con el ejemplo de los años.
Lo mismo pero cambiamos sólo el primer argumento a DAY. Así:
SELECT TIMESTAMPDIFF(DAY, '1997-06-21', '2018-05-07') AS dias_transcurridos;
Con estos resultados:
Claro que es posible calcular las horas, minutos o segundos transcurridos. Sólo cambiamos el primer argumento a HOUR, MINUTE o SECOND.
Aquí unos ejemplos:
Así es como podemos calcular o sacar la diferencia de 2 fechas en MySQL.
Hoy te voy a presentar un creador de credenciales que acabo de programar y que…
Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…
En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…
En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…
Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…
En este artículo te voy a enseñar cómo usar un "top level await" esperando a…
Esta web usa cookies.
Ver comentarios
Hombre tu anti bloqueadores no jala, desactive mi adblock del chrome y aun asi me detecta tuve que eliminar la capa de anti adblock con las herramientas de desarrollador
Hola. Gracias por reportarlo, ya lo he arreglado.
Saludos