mysql - 求两个时间的差值

1、使用TIMEDIFF函数,求time差值

MySQL timediff(time1,time2):两个日期相减 time1 - time2,返回 time 差值。

mysql> SELECT TIMEDIFF('12:00','10:00') diff;
+----------+
| diff     |
+----------+
| 02:00:00 |
+----------+
1 row in set (0.00 sec)

注意:timediff(time1,time2) 函数的两个参数类型必须相同。

2、使用DATEDIFF函数,求date差值

MySQL datediff(date1,date2):两个日期相减 date1 - date2,返回天数。

mysql> select datediff('2008-08-08', '2008-08-01');
+--------------------------------------+
| datediff('2008-08-08', '2008-08-01') |
+--------------------------------------+
|                                    7 |
+--------------------------------------+
1 row in set (0.01 sec)

3、使用TIMESTAMPDIFF()函数

TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2)

函数共有三个参数,三个参数的取值分别是:

  • interval:比较的类型,可取值FRAC_SECOND、SECOND、 MINUTE、 HOUR、 DAY、 WEEK、 MONTH、 QUARTER 或YEAR

  • datetime_expr1和datetime_expr2是待比较的两个时间,用后面的时间减去前面的时间

mysql> SELECT TIMESTAMPDIFF(DAY,'2018-12-01 12:23:59','2018-12-03 16:29:50');
+----------------------------------------------------------------+
| TIMESTAMPDIFF(DAY,'2018-12-01 12:23:59','2018-12-03 16:29:50') |
+----------------------------------------------------------------+
|                                                              2 |
+----------------------------------------------------------------+
1 row in set (0.00 sec)
发布了115 篇原创文章 · 获赞 4 · 访问量 4584

猜你喜欢

转载自blog.csdn.net/weixin_43999327/article/details/104495006