I MySQL er FROM_DAYS()
funktion returnerer en datoværdi baseret på antallet af dage angivet som argument.
Denne artikel indeholder eksempler til demonstration.
Syntaks
Syntaksen ser sådan ud:
FROM_DAYS(N)
Hvor N
er antallet af dage fra dag 0 .
Eksempel
Her er et eksempel til at demonstrere.
SELECT FROM_DAYS(366);
Resultat:
+----------------+ | FROM_DAYS(366) | +----------------+ | 0001-01-01 | +----------------+
Bemærk dog, at MySQL-dokumentationen anbefaler, at denne funktion ikke er beregnet til brug med værdier, der går forud for fremkomsten af den gregorianske kalender (1582).
Her er et eksempel med en senere dato:
SELECT FROM_DAYS(645000);
Resultat:
+-------------------+ | FROM_DAYS(645000) | +-------------------+ | 1765-12-13 | +-------------------+
Og en senere dato igen:
SELECT FROM_DAYS(745000);
Resultat:
+-------------------+ | FROM_DAYS(745000) | +-------------------+ | 2039-09-28 | +-------------------+
FROM_DAYS() mod TO_DAYS()
FROM_DAYS()
funktion er det modsatte af TO_DAYS()
, som, givet en dato dato, returnerer dagnummeret. Her er et eksempel for at demonstrere forholdet mellem disse to funktioner:
SELECT CURDATE(), TO_DAYS(CURDATE()), FROM_DAYS(TO_DAYS(CURDATE()));
Resultat:
+------------+--------------------+-------------------------------+ | CURDATE() | TO_DAYS(CURDATE()) | FROM_DAYS(TO_DAYS(CURDATE())) | +------------+--------------------+-------------------------------+ | 2018-06-26 | 737236 | 2018-06-26 | +------------+--------------------+-------------------------------+
Så i dette eksempel bruger jeg TO_DAYS()
for at returnere antallet af dage fra den aktuelle dato. Jeg bruger derefter FROM_DAYS()
for at returnere datoen fra den værdi (som, som forventet, går tilbage til den oprindelige værdi af CURDATE()
).