sql >> Base de Datos >  >> RDS >> Mysql

Cómo obtener la fecha de ayer en MySQL

Problema:

Le gustaría mostrar la fecha de ayer (sin hora) en una base de datos MySQL.

Solución:

SELECT DATE_SUB(CURDATE(), INTERVAL 1 DAY) AS yesterday_date;

Suponiendo que hoy es 2020-09-24, el resultado es:

yesterday_date
2020-09-23

Discusión:

Para obtener la fecha de ayer, debe restar un día a la fecha de hoy. Usa CURDATE() para obtener la fecha de hoy. En MySQL, puede restar cualquier intervalo de fechas usando DATE_SUB() función. Aquí, dado que necesita restar un día, use DATE_SUB(CURDATE(), INTERVAL 1 DAY) para obtener la fecha de ayer. Tenga en cuenta que el resultado de este cálculo todavía tiene la fecha de tipo de columna.

Puede retroceder en cualquier intervalo de tiempo con la misma facilidad. He aquí un ejemplo:

SELECT DATE_SUB(CURDATE(), INTERVAL 2 MONTH) AS date_two_months_ago;

También puedes calcular la fecha de mañana muy fácilmente. Usa el DATE_ADD() función para agregar un intervalo a una fecha.

SELECT DATE_ADD(CURDATE(), INTERVAL 1 DAY) AS tomorrow_date;