计算两日期时间之间相差的天数,秒数,分钟数,周数,小时数,这里主要分享的是通过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   年

例如:

#计算两日期之间相差多少周

select timestampdiff(week,'2011-09-30','2015-05-04');

#计算两日期之间相差多少天

select timestampdiff(day,'2011-09-30','2015-05-04');

另外计算两日期或时间之间相差多少天还可以使用 to_days 函数,但是该函数不用于阳历出现(1582)前的值,原因是当日历改变时,遗失的日期不会被考虑在内。因此对于1582 年之前的日期(或许在其它地区为下一年 ), 该函数的结果实不可靠的。具体用法如:

to_days(end_time) - to_days(start_time);

#计算两日期/时间之间相差的秒数:

select timestampdiff(SECOND,'2011-09-30','2015-05-04');

另外还可以使用 MySql 内置函数 UNIX_TIMESTAMP 实现,如下:

SELECT UNIX_TIMESTAMP(end_time) - UNIX_TIMESTAMP(start_time);

#计算两日期/时间之间相差的时分数: 

select timestampdiff(MINUTE,'2011-09-30','2015-05-04');

另外还可以如下实现:

SELECT SEC_TO_TIME(UNIX_TIMESTAMP(end_time) - UNIX_TIMESTAMP(start_time));

MySql最全的计算时间差相关推荐

  1. mysql datetime类型处理计算时间差

    数据库  与上面有所差距 下面的查询没带时间查询  想要满足上面一段时间查询 只需要带上where 就好 第一个sql select id,userid,count(*) as loginnum,su ...

  2. mysql数据中计算时间差函数

    mysql数据中计算时间差函数 MySql计算两个日期的时间差函数TIMESTAMPDIFF用法: 语法: TIMESTAMPDIFF(interval,datetime_expr1,datetime ...

  3. php mysql 时间差_PHP中计算时间差的方法

    PHP中计算时间差的方法 PHP中计算时间差的几种方法,在php中计算时间差有时候是件麻烦的事!不过只要你掌握了日期时间函数的用法那这些也就变的简单了,以下是小编为大家搜索整理的PHP中计算时间差的方 ...

  4. mysql计算时间差函数 和 四舍五入 2021-10-20

    mysql计算时间差函数 和 四舍五入 mysql计算时间差函数 四舍五入 mysql计算时间差函数 提示:以下是本篇文章正文内容,下面案例可供参考 mysql数据中计算时间差函数 MySql计算两个 ...

  5. MySQL计算时间差的方法

    MySQL计算时间差的方法 对于timestamp类型 TIMESTAMPDIFF 可以使用TimeStampDiff()函数计算两个时间之间的时间差,函数声明如下: TIMESTAMPDIFF(un ...

  6. mysql计算时间差(秒)

    有时间前台页面需要显示执行任务的时间,以秒显示,这就需要计算2个timestamp的时间差. import java.text.DateFormat; import java.text.ParseEx ...

  7. MySQL 计算时间差格式化为 X天X小时X分钟

    如果用 TIMEDIFF 计算时间差的话,会出现最大限制,最大格式化为34天23小时59分钟,这显然是不合需求的 TIME值的范围可以从"-838:59:59"到"838 ...

  8. php中计算时间差的几种方法,php计算时间差的方法

    一个简单的例子:计算借书的天数,根据每天的日期进行计算. (1) 有数据库的情况 MSSQL可以使用触发器!用专门计算日期差的函数datediff()便可. MYSQL那就用两个日期字段的差值计算的计 ...

  9. mysql相邻行数据计算的自定义变量@和Lead窗口函数的具体案例适应版本mysq5.7 mysql8.0

    Mysql相邻数据(行)计算的自定义变量与Lead Lag窗口函数的案例 1 相邻行 我们在处理数据时有时需要对业务上定义的相邻行进行统计计算. 比如我们想统计公司里所有部门最近2年或相邻年份)的成本 ...

最新文章

  1. Matlab学习笔记——find()函数
  2. 任意的android程序,Android任意位置获取应用Context
  3. 如何在不影响网络的情况下构建边缘计算策略
  4. 谈表达式树的缓存(7):五种缓存方式的总体分析及改进方案
  5. Linux 下的文件管理管理系统中的输出输入
  6. 继承_月隐学python第16课
  7. 利用Helm简化Kubernetes应用部署(2)
  8. ubuntu16.4下用jexus部署asp.net core rtm
  9. Openbox自定义键盘(lxde-rc)
  10. XCodeGhost
  11. scrapy框架简介和基础应用
  12. 51单片机——LED点阵屏
  13. 手机安装php7,php7.3编译安装时报错system libzip must be upgraded to version = 0.11
  14. Down Payment一个不错的练习
  15. 康师傅被“水和面”糊住了眼睛?
  16. Maven插件 [WARNING] 'parent.relativePath' of POM 类似警告处理
  17. java 多线程高级,java 多线程高级(传统多线程)
  18. [论]【DSTGCN】Dynamic SpatiotemporalGraph Convolutional Neural Networks for Traffic Data Imputation
  19. mysql通过股票代码查数据_如何在交易数据中查询各个版本交易量前三的股票?(MySQL分组排名)...
  20. 正则表达式强密码验证: 8-16个字符,不包含空格,必须包含数字,字母或字符至少两种

热门文章

  1. 桥接模式NAT模式 详解
  2. DPA华为备份一体机异机恢复达梦数据库
  3. mysql5.7配置用户名密码_TP-Link路由器默认管理员密码是什么 路由器默认管理员密码介绍【详解】...
  4. 解决Invalid numeric Value:Leading zeroes not allowed问题
  5. 辐射发射测试软件,辐射发射(Radiated Emission)测试方法详解
  6. 输入一个字符串,判断里面有多少个单词(c语言)
  7. 计算机编辑c语言,计算机C语言编辑程序探讨
  8. sql截取时分:15小时26分钟
  9. 如何开发引入小程序插件
  10. 华为路由器访问控制列表ACL配置实例