makedate
根据给定的年份和一年中的日期值创建并返回一个日期。
此函数从 v3.1 开始支持。
语法
DATE makedate(INT year, INT dayOfYear);
参数
year
:范围从 0 到 9999。如果超出此范围,则返回 NULL。支持的数据类型为 INT。dayOfYear
:一年中的日期。支持的数据类型为 INT。为了保持与函数 dayofyear 相同的语义,如果此数字大于 366 或在非闰年中为 366,则它不是一年中的日期。
返回值
返回给定年份的第 dayOfYear 天的日期。
year
必须在 [0,9999] 范围内。 否则,返回 NULL。dayOfYear
必须介于 1 和当年天数之间(正常年份为 365 天,闰年为 366 天)。 否则,返回 NULL。- 如果任一输入参数为 NULL,结果也为 NULL。
示例
mysql> select makedate(2023,0);
+-------------------+
| makedate(2023, 0) |
+-------------------+
| NULL |
+-------------------+
mysql> select makedate(2023,32);
+--------------------+
| makedate(2023, 32) |
+--------------------+
| 2023-02-01 |
+--------------------+
mysql> select makedate(2023,365);
+---------------------+
| makedate(2023, 365) |
+---------------------+
| 2023-12-31 |
+---------------------+
mysql> select makedate(2023,366);
+---------------------+
| makedate(2023, 366) |
+---------------------+
| NULL |
+---------------------+
mysql> select makedate(9999,365);
+---------------------+
| makedate(9999, 365) |
+---------------------+
| 9999-12-31 |
+---------------------+
mysql> select makedate(10000,1);
+--------------------+
| makedate(10000, 1) |
+--------------------+
| NULL |
+--------------------+
关键词
MAKEDATE,MAKE