mysql计算两个字段时间差

一、业务需求:

需要计算用户平均登录时长

二、语法介绍

1、语法:TIMESTAMPDIFF 

TIMESTAMPDIFF(SECOND,start_time,end_time)

2、说明: (start_time与end_time的格式是:2021-09-01 18:50:52,)

计算start_time与end_time之间的整数差。其结果的单位由SECOND参数给出(我写的是秒)。

该参数必须是以下值的其中一个:

  1. FRAC_SECOND。表示间隔是毫秒
  2. SECOND。秒
  3. MINUTE。分钟
  4. HOUR。小时
  5. DAY。天
  6. WEEK。星期
  7. MONTH。月
  8. QUARTER。季度
  9. YEAR。年

三、具体写法

计算出用户平均登录时长单位分保留两位小数

求和单位(秒):SECOND

时间差:TIMESTAMPDIFF

求和:SUM

保留两位小数:FORMAT

总条数:count(*)

SELECT FORMAT((SUM(TIMESTAMPDIFF(SECOND,start_time,end_time))/count(*)/60),2) tiem FROM ump_user WHERE id = '2113e4b85d38413c8eb8e8e676aff7b5'

参考:https://blog.csdn.net/weixin_33896726/article/details/93955219

参考:https://www.cnblogs.com/yiyidajiaoya/p/8241708.html

猜你喜欢

转载自blog.csdn.net/weixin_40873693/article/details/120058234