hi,欢迎访问本站!
当前位置: 首页数据库正文

mysql 数据库 to_days 函数介绍与使用

墨初 数据库 913阅读

mysql 查询语句中有一个to_days() 函数,此函数可以返回从公元00年01日到指定日期之间的天数,下面是to_days()函数的介绍与用法。

mysql to_days 函数介绍

to_days:返回从00年开始到指定日期之间相隔的天数。

注意:mysql to_days 函数不适于公历1582年的日期,因为它不考虑日历更改时丢失的日期,会造成输出的结果不靠靠。

语法:

to_days(date);

参数:

参数描述
date必需,字符串类型的日期或输入日期格式的函数

mysql to_days 函数用法

例1:

to_days 输出一个指定日期从0年开始相隔的天数

mysql> select to_days('0000/00/01');
+-----------------------+
| to_days('0000/00/01') |
+-----------------------+
|                  NULL |
+-----------------------+
1 row in set, 1 warning (0.07 sec)

mysql> select to_days('0000/01/01');
+-----------------------+
| to_days('0000/01/01') |
+-----------------------+
|                     1 |
+-----------------------+
1 row in set (0.00 sec)

mysql> select to_days('20220601');
+---------------------+
| to_days('20220601') |
+---------------------+
|              738672 |
+---------------------+
1 row in set (0.00 sec)

例2:

to_days 指定日期的多种书写方式

mysql> select to_days('20220601');
+---------------------+
| to_days('20220601') |
+---------------------+
|              738672 |
+---------------------+
1 row in set (0.00 sec)

mysql> select to_days('2022/12/01');
+-----------------------+
| to_days('2022/12/01') |
+-----------------------+
|                738855 |
+-----------------------+
1 row in set (0.01 sec)

mysql> select to_days('2022,12,31');
+-----------------------+
| to_days('2022,12,31') |
+-----------------------+
|                738885 |
+-----------------------+
1 row in set (0.00 sec)

例3:

to_day函数的其它用法

select * from 表名 where to_days(时间字段名) = to_days(now()); #查询当天的数据
SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 时间字段名) <= 1; //查询近7天的数据
标签:
声明:无特别说明,转载请标明本文来源!