Probleem:
U wilt de datum van gisteren (zonder tijd) weergeven in een MySQL-database.
Oplossing:
SELECT DATE_SUB(CURDATE(), INTERVAL 1 DAY) AS yesterday_date;
Ervan uitgaande dat het vandaag 24-09-2020 is, is het resultaat:
yesterday_date |
---|
23-09-2020 |
Discussie:
Om de datum van gisteren te krijgen, moet u één dag aftrekken van de datum van vandaag. Gebruik CURDATE()
om de datum van vandaag te krijgen. In MySQL kunt u elk datuminterval aftrekken met behulp van de DATE_SUB()
functie. Aangezien u hier één dag moet aftrekken, gebruikt u DATE_SUB(CURDATE(), INTERVAL 1 DAY)
om de datum van gisteren te krijgen. Merk op dat het resultaat van deze berekening nog steeds het kolomtype datum heeft.
U kunt net zo gemakkelijk teruggaan met elk tijdsinterval. Hier is een voorbeeld:
SELECT DATE_SUB(CURDATE(), INTERVAL 2 MONTH) AS date_two_months_ago;
Je kunt ook heel gemakkelijk de datum van morgen berekenen. Gebruik de DATE_ADD()
functie om een interval aan een datum toe te voegen.
SELECT DATE_ADD(CURDATE(), INTERVAL 1 DAY) AS tomorrow_date;