MySql处理日期时间常用函数

时间:2022-09-22 17:04:16

  在工作中经常会遇到针对时间做处理的一些统计,如统计近3个小时的平均处理时间不超过10分钟等等,在MySQL中用到的出来时间的函数如下:

1.MySql内置的函数 TimeStampDiff
  计算两日期时间之间相差的天数,秒数,分钟数,周数,小时数,这里主要分享的是通过MySql内置的函数 TimeStampDiff() 实现。
函数 TimeStampDiff() 是MySQL本身提供的可以计算两个时间间隔的函数,语法为:
TIMESTAMPDIFF(unit,datetime_expr1,datetime_expr2)
返回日期或日期时间表达式datetime_expr1 和datetime_expr2the 之间的整数差。

其中unit单位有如下几种,

分别是:FRAC_SECOND (microseconds), SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, QUARTER, YEAR 。
该参数具体释义如下:
FRAC_SECOND表示间隔是毫秒 SECOND -秒  MINUTE-分钟  HOUR-小时  DAY-天 WEEK -星期   MONTH-月 QUARTER-季度  YEAR-年

2.MySQL Date 函数

下面的表格列出了 MySQL 中最重要的内建日期函数:

函数 描述
NOW() 返回当前的日期和时间
CURDATE() 返回当前的日期
CURTIME() 返回当前的时间
DATE() 提取日期或日期/时间表达式的日期部分
EXTRACT() 返回日期/时间按的单独部分
DATE_ADD() 给日期添加指定的时间间隔
DATE_SUB() 从日期减去指定的时间间隔
DATEDIFF() 返回两个日期之间的天数
DATE_FORMAT() 用不同的格式显示日期/时间

 

 

 

 

 

 

 

 

 

 

统计近3个小时的平均处理时间sql语句如下:

select AVG(TIMESTAMPDIFF(MINUTE,inserttime,deal_time)) from table1  where   inserttime BETWEEN DATE_SUB(NOW(),INTERVAL 12 HOUR) and NOW() limit 100;