In MariaDB MAKEDATE()
ist eine integrierte Datums- und Uhrzeitfunktion, die ein Datum basierend auf dem Jahr und dem Tag des Jahres zurückgibt, die als Argumente bereitgestellt werden.
Syntax
Die Syntax lautet wie folgt:
MAKEDATE(year,dayofyear)
Beispiel
Hier ist ein Beispiel:
SELECT MAKEDATE(2030, 10);
Ergebnis:
+--------------------+ | MAKEDATE(2030, 10) | +--------------------+ | 2030-01-10 | +--------------------+
Und noch einer:
SELECT MAKEDATE(2030, 100);
Ergebnis:
+---------------------+ | MAKEDATE(2030, 100) | +---------------------+ | 2030-04-10 | +---------------------+
Gib ein Datum in einem zukünftigen Jahr zurück
Wenn das zweite Argument (Tag des Jahres) größer als die Anzahl der Tage im Jahr ist, dann ist das resultierende Datum ein Jahr in der Zukunft.
Beispiel:
SELECT
MAKEDATE(2030, 366),
MAKEDATE(2030, 700),
MAKEDATE(2030, 7000);
Ergebnis:
+---------------------+---------------------+----------------------+ | MAKEDATE(2030, 366) | MAKEDATE(2030, 700) | MAKEDATE(2030, 7000) | +---------------------+---------------------+----------------------+ | 2031-01-01 | 2031-12-01 | 2049-03-01 | +---------------------+---------------------+----------------------+
Zero Days
Das zweite Argument (Tag des Jahres) muss größer als 0
sein oder das Ergebnis ist null
.
Beispiel:
SELECT
MAKEDATE(2030, 366),
MAKEDATE(2030, 700),
MAKEDATE(2030, 7000);
Ergebnis:
+---------------------+---------------------+----------------------+ | MAKEDATE(2030, 366) | MAKEDATE(2030, 700) | MAKEDATE(2030, 7000) | +---------------------+---------------------+----------------------+ | 2031-01-01 | 2031-12-01 | 2049-03-01 | +---------------------+---------------------+----------------------+
Fehlendes Argument
Aufruf von MAKEDATE()
mit der falschen Anzahl von Argumenten oder ohne Übergabe von Argumenten führt zu einem Fehler:
SELECT MAKEDATE();
Ergebnis:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'MAKEDATE'
Und noch ein Beispiel:
SELECT MAKEDATE( 2020, 10, 20 );
Ergebnis:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'MAKEDATE'
Mach dir Zeit
Siehe auch MAKETIME()
zum Konstruieren eines Zeitwerts aus seinen Stunden, Minuten und Sekunden.