MySQL中时间不能直接相减,如果日、分、时不同,相减结果是错误的

mysql> select t1,t2,t2-t1 from mytest;  
+---------------------+---------------------+-------+  
| t1                  | t2                  | t2-t1 |  
+---------------------+---------------------+-------+  
| 2013-04-21 16:59:33 | 2013-04-21 16:59:43 |    10 |  
| 2013-04-21 16:59:33 | 2013-04-21 17:00:33 |  4100 |  
| 2013-04-21 16:59:33 | 2013-04-21 17:59:35 | 10002 |  
+---------------------+---------------------+-------+  
 
实际是mysql的时间相减是做了一个隐式转换操作,将时间转换为整数,但并不是用unix_timestamp转换,而是直接把年月日时分秒拼起来,如2013-04-21 16:59:33 直接转换为20130421165933,由于时间不是十进制,所以最后得到的结果没有意义,这也是导致上面出现坑爹的结果。
 
要得到正确的时间相减秒值,有以下3种方法:
1、time_to_sec(timediff(t2, t1)),
2、timestampdiff(second, t1, t2),
3、unix_timestamp(t2) -unix_timestamp(t1)

mysql时间相减的问题的更多相关文章

  1. mysql时间加减运算

    一.MySQL 获得当前日期时间 函数 1.1 获得当前日期 + 时间(date + time) 函数:now() mysql> select now();+———————+| now() |+ ...

  2. C#-和时间有关的计算代码、时间相减 得到天数、小时、分钟、秒差

    asp.net(C#)时间相减 得到天数.小时.分钟.秒差   asp.net(C#)时间相减 得到天数.小时.分钟.秒差   DateTime dtone = Convert.ToDateTime( ...

  3. asp.net(C#)时间相减 得到天数、小时、分钟、秒差

    asp.net(C#)时间相减 得到天数.小时.分钟.秒差 DateTime dtone = Convert.ToDateTime("2007-1-1 05:00:00"); Da ...

  4. 『片段』C# DateTime 时间相减 和 时区的关系

    本文只是基础代码片段,直接先写 结论: C# DateTime 时间相减 —— 和 时区无关,只和时间值有关. 运行结果: 测试代码: using System; using System.Colle ...

  5. Oracle 时间相减得出毫秒、秒、分、时、天,,【转】

    http://blog.csdn.net/redarmy_chen/article/details/7351410 oracle 两个时间相减默认的是天数 oracle 两个时间相减默认的是天数*24 ...

  6. oracle 两个时间相减

    oracle 两个时间相减默认的是天数 oracle 两个时间相减默认的是天数*24 为相差的小时数 oracle 两个时间相减默认的是天数*24*60 为相差的分钟数 oracle 两个时间相减默认 ...

  7. C#两个时间相减

    原文地址:http://www.jb51.net/article/60177.htm using System; using System.Collections.Generic; using Sys ...

  8. C#实现两个时间相减的方法

    脚本之家看到的,关于两个时间差值的获取 http://www.jb51.net/article/60177.htm using System; using System.Collections.Gen ...

  9. mysql日期相减取小时

    mysql日期相减取小时 TIMESTAMPDIFF(HOUR,a.StartTime,a.EndTime)

随机推荐

  1. 【Eclipse】Eclipse 中 使用 Git 方法

    参考资料: Eclipse关联GitHub实现版本控制:http://jingyan.baidu.com/article/64d05a0262f013de55f73bcc.html http://ww ...

  2. Cygwin-安装和配置ssh服务

    Cygwin介绍: Cygwin是一个在windows平台上执行的类UNIX模拟环境.它对于学习UNIX/Linux操作环境,或者从UNIX到Windows的应用程序移植,或者进行某些特殊的开发工作, ...

  3. sql习题练习

    表结构: create database MyCompany go use MyCompany go create table Departments ( Department_ID ,) prima ...

  4. mysql :安装过程中的问题

    安装mysql  选择路径的问题 出现如下问题:说明之前安装过mysql,写在的不干净

  5. 使用Maven整合SSH总结

    本人自己进行的SSH整合,中间遇到不少问题,特此做些总结,仅供参考. 项目环境: struts-2.3.31 + spring-4.3.7 + hibernate-4.2.21 + maven-3.3 ...

  6. xcode几个常用的快捷键

    command + ctrl + e   修改变量的名称:选中某个变量,按下该快捷键,可以批量修改对应的变量名称 command + shift + j 定位到文档导航界面,然后通过上下方向键,可以快 ...

  7. CMA,memory compaction,migration and fragmation

    CMA A reworked contiguous memory allocator http://lwn.net/Articles/447405/ June 14, 2011 分配大块物理上连续内存 ...

  8. .net 哈希表和字典的基本用法

    哈希表 传送门:https://www.cnblogs.com/xpvincent/archive/2013/01/15/2860841.html using System; using System ...

  9. docker教程之从一头雾水到不一头雾水(1)

    一.安装docker 1.搜索docker [root@node3 ~]# yum search docker Loaded plugins: fastestmirror, langpacks Loa ...

  10. Android应用架构之MVP--->天气实例

    我们知道.Android App 本质上抽象成两个层次:视图和数据.为了App在发展过程中高速的适应变化,方便维护和高速迭代,我们要将数据和视图解耦,而在解藕方面我们的前辈们在漫长的软件开发经验中为我 ...