MySQL 初年度から日数を指定して日付を取得する

MySQL 初年度から日数を指定して日付を取得する

MySQLで、初年度から日数を指定して日付を取得する手順を記述してます。

環境

  • OS ubuntu21.10
  • MySQL Ver 8.0.27-0ubuntu0.21.10.1 for Linux on x86_64 ((Ubuntu))
  • MySQL Workbench 8.0.27

手順

初年度から日数を指定して日付を取得する場合は、「MAKEDATE()」を使用します。

MAKEDATE( 年度, 日数 )

実際に、実行してみます。

SELECT 
MAKEDATE(2021,7),
MAKEDATE(2021,31),
MAKEDATE(2021,32),
MAKEDATE(2021,365)
;

実行結果をみると、日数から計算された日付が取得されていることが確認できます。

年度を超えても、うるう年でも、正しく計算されます。

SELECT 
MAKEDATE(2020,60),
MAKEDATE(2020,367)
;

実行結果

0やマイナスを指定

0やマイナスを指定すると、「null」が返されます。

SELECT 
MAKEDATE(2020,-1),
MAKEDATE(2020,0)
;

実行結果

小数点を指定

少数を指定すると、小数部が四捨五入されるようです。

SELECT 
MAKEDATE(2020,1.4),
MAKEDATE(2020,1.5),
MAKEDATE(2020,2.4),
MAKEDATE(2020,2.5)
;

実行結果