In MySQL is de FROM_DAYS()
functie retourneert een datumwaarde op basis van het aantal dagen dat als argument is opgegeven.
Dit artikel bevat voorbeelden om te demonstreren.
Syntaxis
De syntaxis gaat als volgt:
FROM_DAYS(N)
Waar N
is het aantal dagen vanaf dag 0 .
Voorbeeld
Hier is een voorbeeld om te demonstreren.
SELECT FROM_DAYS(366);
Resultaat:
+----------------+ | FROM_DAYS(366) | +----------------+ | 0001-01-01 | +----------------+
Houd er echter rekening mee dat de MySQL-documentatie aangeeft dat deze functie niet bedoeld is voor gebruik met waarden die voorafgaan aan de komst van de Gregoriaanse kalender (1582).
Hier is een voorbeeld met een latere datum:
SELECT FROM_DAYS(645000);
Resultaat:
+-------------------+ | FROM_DAYS(645000) | +-------------------+ | 1765-12-13 | +-------------------+
En weer een latere datum:
SELECT FROM_DAYS(745000);
Resultaat:
+-------------------+ | FROM_DAYS(745000) | +-------------------+ | 2039-09-28 | +-------------------+
FROM_DAYS() vs TO_DAYS()
De FROM_DAYS()
functie is het tegenovergestelde van TO_DAYS()
, die, gegeven een datumdatum, het dagnummer retourneert. Hier is een voorbeeld om de relatie tussen deze twee functies te demonstreren:
SELECT CURDATE(), TO_DAYS(CURDATE()), FROM_DAYS(TO_DAYS(CURDATE()));
Resultaat:
+------------+--------------------+-------------------------------+ | CURDATE() | TO_DAYS(CURDATE()) | FROM_DAYS(TO_DAYS(CURDATE())) | +------------+--------------------+-------------------------------+ | 2018-06-26 | 737236 | 2018-06-26 | +------------+--------------------+-------------------------------+
Dus in dit voorbeeld gebruik ik TO_DAYS()
om het aantal dagen vanaf de huidige datum te retourneren. Ik gebruik dan FROM_DAYS()
om de datum van die waarde terug te geven (die, zoals verwacht, teruggaat naar de oorspronkelijke waarde van CURDATE()
).