days_diff
功能
计算开始时间和结束时间相差几天(expr1
- expr2
),结果精确到天。
此函数与 datediff 的区别是:
函数名 | 行为 | 例子 |
---|---|---|
days_diff | 对日期的判断精确到秒级,并向下取整数。 | '2020-12-25 23:00:00' 与 '2020-12-24 23:00:01' 的 days_diff 为 0。 |
datediff | 对日期的判断精确到天级。 | '2020-12-25 23:00:00' 与 '2020-12-24 23:00:01' 的 datediff 为 1。 |
语法
BIGINT days_diff(DATETIME expr1,DATETIME expr2);
参数说明
expr1
: 结束时间,支持的数据类型为 DATETIME。
expr2
: 开始时间,支持的数据类型为 DATETIME。
返回值说明
返回值的数据类型为 BIGINT。如果日期不存在,则返回 NULL。如果相差不满一天,则返回 0。
示例
select days_diff('2010-11-30 23:00:00', '2010-11-29 23:00:00')
+---------------------------------------------------------+
| days_diff('2010-11-30 23:00:00', '2010-11-29 23:00:00') |
+---------------------------------------------------------+
| 1 |
+---------------------------------------------------------+
select days_diff('2010-11-30 23:00:00', '2010-11-29 23:10:00')
+---------------------------------------------------------+
| days_diff('2010-11-30 23:00:00', '2010-11-29 23:10:00') |
+---------------------------------------------------------+
| 0 |
+---------------------------------------------------------+