MySQL TO_DAYS() 函数将日期转换为数字天数。此函数返回给定日期/日期时间值与日期"0000-00-00"之间的天数。如果日期时间为"0000-00-00",则返回 NULL。
此函数仅适用于公历内的日期。
注意: FROM_DAYS() 函数与 TO_DAYS() 函数相反。
语法
TO_DAYS(datetime)
参数
datetime | 必填。 指定要转换为数字天数的日期或日期时间值。 |
返回值
返回转换后的数字天数。
示例 1:
下面的示例显示了 TO_DAYS() 函数的用法。
mysql> SELECT TO_DAYS('2018-08-18');
Result: 737289
mysql> SELECT TO_DAYS('2018-08-18 10:38:42');
Result: 737289
mysql> SELECT TO_DAYS('2018-08-18 10:38:42.000004');
Result: 737289
mysql> SELECT TO_DAYS('2018-08-19');
Result: 737290
mysql> SELECT TO_DAYS('0000-01-01');
Result: 1
mysql> SELECT TO_DAYS('0000-00-00');
Result: NULL
示例 2 :
考虑一个名为Employee的数据库表,其中包含以下记录:
EmpID | Name | City | Age | Date_of_Joining |
---|---|---|---|---|
1 | John | London | 25 | 2018-05-25 |
2 | Marry | New York | 24 | 2018-10-15 |
3 | Jo | Paris | 27 | 2019-06-09 |
4 | Kim | Amsterdam | 30 | 2019-09-21 |
5 | Ramesh | New Delhi | 28 | 2019-10-25 |
6 | Suresh | Mumbai | 28 | 2021-12-26 |
下面给出的语句可用于转换列的记录Date_of_Joining 为数字天数:
SELECT *, TO_DAYS(Date_of_Joining) AS TO_DAYS_Value FROM Employee;
这将产生如下所示的结果:
EmpID | Name | City | Age | Date_of_Joining | TO_DAYS_Value |
---|---|---|---|---|---|
1 | John | London | 25 | 2018-05-25 | 737204 |
2 | Marry | New York | 24 | 2018-10-15 | 737347 |
3 | Jo | Paris | 27 | 2019-06-09 | 737584 |
4 | Kim | Amsterdam | 30 | 2019-09-21 | 737688 |
5 | Ramesh | New Delhi | 28 | 2019-10-25 | 737722 |
6 | Suresh | Mumbai | 28 | 2021-12-26 | 738515 |