// Saca aquellas empresas que justo dentro de 3 meses tenga la fecha_caducidad
SELECT * FROM empresa WHERE fecha_caducidad = DATE_ADD(curdate(), INTERVAL 3 MONTH)
// Sacar aquellos pedidos cuya fecha sea superior a 3 horas
SELECT id_pedido FROM pedido WHERE estado='pendiente' AND TIME_TO_SEC(TIMEDIFF(NOW(), fecha))>(3*3600)
// Sacar aquellas empresas en las que la fecha actual esté entre la fecha de activación y la fecha de caducidad
select * from empresa where CURDATE() BETWEEN fecha_activacion AND fecha_caducidad
// Sacar diferencia entre días, meses, años, etc entre dos fechas
SELECT DATEDIFF(day, '2014/09/28','2019/05/31') AS diasDif;
SELECT DATEDIFF(month, '2014/09/28','2019/05/31') AS mesesDif;
SELECT DATEDIFF(year, '2014/09/28','2019/05/31') AS annosDif;
// Obtener los años, meses y días que han pasado entre una fecha y la fecha actual
SELECT (
SELECT TIMESTAMPDIFF( YEAR, '2014-09-28', CURDATE( ) )
) AS ANIOS, (
SELECT (
TIMESTAMPDIFF(
MONTH , '2014-09-28', CURDATE( ) )
) - ( TIMESTAMPDIFF( YEAR, '2014-09-28', CURDATE( ) ) *12 )
) AS MESES, (
SELECT DATEDIFF( CURDATE( ) , DATE_ADD( DATE_ADD( '2014-09-28', INTERVAL TIMESTAMPDIFF( YEAR, '2014-09-28', CURDATE( ) ) YEAR ) , INTERVAL( TIMESTAMPDIFF(
MONTH , '2014-09-28', CURDATE( ) ) ) - ( TIMESTAMPDIFF( YEAR, '2014-09-28', CURDATE( ) ) *12 )
MONTH ) )
) AS DIAS
Más información en: https://dev.mysql.com/doc/refman/8.0/en/date-and-time-functions.html
No hay comentarios:
Publicar un comentario