MariaDBでは、MAKEDATE()
は、引数として指定された年と日に基づいて日付を返す組み込みの日付と時刻の関数です。
構文
構文は次のようになります:
MAKEDATE(year,dayofyear)
例
次に例を示します:
SELECT MAKEDATE(2030, 10);
結果:
+--------------------+ | MAKEDATE(2030, 10) | +--------------------+ | 2030-01-10 | +--------------------+
そしてもう1つ:
SELECT MAKEDATE(2030, 100);
結果:
+---------------------+ | MAKEDATE(2030, 100) | +---------------------+ | 2030-04-10 | +---------------------+
将来の日付を返す
2番目(年の日)の引数がその年の日数よりも大きい場合、結果の日付は将来の年になります。
例:
SELECT
MAKEDATE(2030, 366),
MAKEDATE(2030, 700),
MAKEDATE(2030, 7000);
結果:
+---------------------+---------------------+----------------------+ | MAKEDATE(2030, 366) | MAKEDATE(2030, 700) | MAKEDATE(2030, 7000) | +---------------------+---------------------+----------------------+ | 2031-01-01 | 2031-12-01 | 2049-03-01 | +---------------------+---------------------+----------------------+
ゼロデイ
2番目(年の日)の引数は0
より大きくなければなりません または、結果はnull
。
例:
SELECT
MAKEDATE(2030, 366),
MAKEDATE(2030, 700),
MAKEDATE(2030, 7000);
結果:
+---------------------+---------------------+----------------------+ | MAKEDATE(2030, 366) | MAKEDATE(2030, 700) | MAKEDATE(2030, 7000) | +---------------------+---------------------+----------------------+ | 2031-01-01 | 2031-12-01 | 2049-03-01 | +---------------------+---------------------+----------------------+
引数がありません
MAKEDATE()
を呼び出す 引数の数が間違っているか、引数を渡さないと、エラーが発生します:
SELECT MAKEDATE();
結果:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'MAKEDATE'
そして別の例:
SELECT MAKEDATE( 2020, 10, 20 );
結果:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'MAKEDATE'
時間を作る
MAKETIME()
も参照してください 時間、分、秒から時間値を作成します。