Wanneer u MySQL gebruikt, kunt u de MAKEDATE()
. gebruiken functie om een datum uit het jaar en de dag van het jaar te retourneren.
Met andere woorden, u geeft twee argumenten; de ene is het jaar en de andere is de dag van het jaar. De MAKEDATE()
functie retourneert dan de datumwaarde op basis van die twee argumenten.
Syntaxis
De syntaxis gaat als volgt:
MAKEDATE(year,dayofyear)
Waar year
is het jaardeel, en dayofyear
is het dag-van-jaar gedeelte.
Voorbeeld 1 – Basisgebruik
Hier is een voorbeeld om te demonstreren.
SELECT MAKEDATE(2021,10);
Resultaat:
+-------------------+ | MAKEDATE(2021,10) | +-------------------+ | 2021-01-10 | +-------------------+
Dus omdat 10
betekent de 10e dag van het jaar, dit betekent dat het 10 januari is.
Voorbeeld 2 – Een grotere dagwaarde
Hier is een voorbeeld dat een grotere dagwaarde gebruikt.
SELECT MAKEDATE(2021,350);
Resultaat:
+--------------------+ | MAKEDATE(2021,350) | +--------------------+ | 2021-12-16 | +--------------------+
Dus in dit geval resulteert de 350ste dag van het jaar in 16 december.
U kunt ook waarden gebruiken die groter zijn dan 365 (of 366 voor schrikkeljaren). Als u dit doet, wordt het resultaat indien nodig overgeschakeld naar een nieuw kalenderjaar.
SELECT MAKEDATE(2021,500), MAKEDATE(2021,5000);
Resultaat:
+--------------------+---------------------+ | MAKEDATE(2021,500) | MAKEDATE(2021,5000) | +--------------------+---------------------+ | 2022-05-15 | 2034-09-09 | +--------------------+---------------------+
Voorbeeld 3 – Schrikkeljaren
Houd rekening met schrikkeljaren bij het gebruik van deze functie.
SELECT MAKEDATE(2020,350), MAKEDATE(2021,350);
Resultaat:
+--------------------+--------------------+ | MAKEDATE(2020,350) | MAKEDATE(2021,350) | +--------------------+--------------------+ | 2020-12-15 | 2021-12-16 | +--------------------+--------------------+
In dit geval is 2020 een schrikkeljaar. En omdat februari een extra dag heeft tijdens schrikkeljaren, heeft dit invloed op de uitkomst van de resterende dagwaarden.
Voorbeeld 4 – Nulwaarden
Als u een waarde nul opgeeft, is het resultaat NULL
.
SELECT MAKEDATE(2020,0);
Resultaat:
+------------------+ | MAKEDATE(2020,0) | +------------------+ | NULL | +------------------+