-
MySQL计算两个日期(两个时间)相差的天数、月数、年数
- 网站名称:MySQL计算两个日期(两个时间)相差的天数、月数、年数
- 网站分类:技术文章
- 收录时间:2025-06-30 16:10
- 网站地址:
“MySQL计算两个日期(两个时间)相差的天数、月数、年数” 网站介绍
MySQL自带的日期函数TIMESTAMPDIFF计算两个日期相差的秒数、分钟数、小时数、天数、周数、季度数、月数、年数,当前日期增加或者减少一天、一周等等。
SELECT TIMESTAMPDIFF(类型,开始时间,结束时间)
相差的秒数:
SELECT TIMESTAMPDIFF(SECOND,'1993-03-23 00:00:00',DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S'))
相差的分钟数:
SELECT TIMESTAMPDIFF(MINUTE,'1993-03-23 00:00:00',DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S'))
相差的小时数:
SELECT TIMESTAMPDIFF(HOUR,'1993-03-23 00:00:00 00:00:00',DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S'))
相差的天数:
SELECT TIMESTAMPDIFF(DAY,'1993-03-23 00:00:00',DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S'))
相差的周数:
SELECT TIMESTAMPDIFF(WEEK,'1993-03-23 00:00:00',DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S'))
相差的季度数:
SELECT TIMESTAMPDIFF(QUARTER,'1993-03-23 00:00:00',DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S'))
相差的月数:
SELECT TIMESTAMPDIFF(MONTH,'1993-03-23 00:00:00',DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S'))
相差的年数:
SELECT TIMESTAMPDIFF(YEAR,'1993-03-23 00:00:00',DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S'))
获取当前日期:
SELECT NOW()
SELECT CURDATE()
当前日期增加一天:
SELECT DATE_SUB(CURDATE(),INTERVAL -1 DAY)
当前日期减少一天:
SELECT DATE_SUB(CURDATE(),INTERVAL 1 DAY)
当前日期增加一周:
SELECT DATE_SUB(CURDATE(),INTERVAL -1 WEEK)
当前日期增加一月:
SELECT DATE_SUB(CURDATE(),INTERVAL -1 MONTH)
SELECT DATE_SUB(NOW(),INTERVAL -1 MONTH)
FRAC_SECOND 毫秒
SECOND 秒
MINUTE 分钟
HOUR 小时
DAY 天
WEEK 星期
MONTH 月
QUARTER 季度
YEAR 年
例:
一、业务需求:
需要计算用户平均登录时长
二、语法介绍
1、语法:TIMESTAMPDIFF
TIMESTAMPDIFF(SECOND,start_time,end_time)
2、说明: (start_time与end_time的格式是:2021-09-01 18:50:52,)
计算start_time与end_time之间的整数差。其结果的单位由SECOND参数给出(我写的是秒)。
该参数必须是以下值的其中一个:
FRAC_SECOND。表示间隔是毫秒
SECOND。秒
MINUTE。分钟
HOUR。小时
DAY。天
WEEK。星期
MONTH。月
QUARTER。季度
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'
更多相关网站
- MySQL 数据库恢复:如何执行时间点恢复(PITR)以挽救受损数据?
- 如何正确查询mysql的启动和关闭时间?
- 您对MySQL常用内置日期时间函数认识多少?
- mysql备份脚本:自己设定用户名密码及数据保留时间
- 阿里二面:最讨厌的问题来了,MySQL 保存日期用哪种数据类型?
- mysql——日期操作
- spring + mysql, 日期年份大于9999带来的灾难
- 牛哇!MySQL中的日志“binlog”的三种格式这么好玩
- MySQL 中时间函数详解,及加减计算总结和使用!
- Mysql日期格式化显示“年月”
- MySQL 保存日期,用哪种数据类型合适
- 分享一个小技巧——mysql统一处理创建时间和更新时间
- 最近发表
- 标签列表
-
- c++论坛 (14)
- 前端论坛 (11)
- mysql 时间索引 (13)
- mydisktest_v298 (35)
- sql 日期比较 (33)
- document.appendchild (35)
- 头像打包下载 (35)
- 二调符号库 (23)
- acmecadconverter_8.52绿色版 (25)
- throttlestop防止降频 (9)
- f12019破解 (16)
- 流星蝴蝶剑修改器 (18)
- 联想杜比音效驱动下载 (10)
- np++ (17)
- 算法第四版pdf (14)
- 梦幻诛仙表情包 (36)
- https://www.zxzj.me/ (9)
- 魔兽模型 (23)
- java面试宝典2019pdf (26)
- beamoff下载 (17)
- disk++ (30)
- vncviewer破解版 (20)
- word文档批量处理大师破解版 (19)
- pk10牛牛 (20)
- mysql 昨天的日期 (13)