/**有一个需求,要求获得两个日期想减的天数,小时数,分钟数。通过查找资料,于是乎我写出了如下代码,来获得两个字段。*/

        IFNULL(CONCAT( IF(aib.`forecast_reply_time`-aib.`actual_reply_time` < 0,'-',''),
IF(FLOOR(HOUR(TIMEDIFF(aib.`forecast_reply_time`,aib.`actual_reply_time`)) / 24)=0,'', CONCAT(FLOOR(HOUR(TIMEDIFF(aib.`forecast_reply_time`,aib.`actual_reply_time`)) / 24),'天')),
IF(MOD(HOUR(TIMEDIFF(aib.`forecast_reply_time`,aib.`actual_reply_time`)), 24)=0,'',CONCAT(MOD(HOUR(TIMEDIFF(aib.`forecast_reply_time`,aib.`actual_reply_time`)), 24), '小时')),
IF(MINUTE(TIMEDIFF(aib.`forecast_reply_time`,aib.`actual_reply_time`))=0,'',CONCAT(MINUTE(TIMEDIFF(aib.`forecast_reply_time`,aib.`actual_reply_time`)), '分钟'))),"") AS stipulatedOften,
IFNULL(CONCAT(
IF(FLOOR(HOUR(TIMEDIFF(aib.`created_at`,aib.`actual_reply_time`)) / 24)=0,'', CONCAT(FLOOR(HOUR(TIMEDIFF(aib.`created_at`,aib.`actual_reply_time`)) / 24),'天')),
IF(MOD(HOUR(TIMEDIFF(aib.`created_at`,aib.`actual_reply_time`)), 24)=0,'',CONCAT(MOD(HOUR(TIMEDIFF(aib.`created_at`,aib.`actual_reply_time`)), 24), '小时')),
IF(MINUTE(TIMEDIFF(aib.`created_at`,aib.`actual_reply_time`))=0,'',CONCAT(MINUTE(TIMEDIFF(aib.`created_at`,aib.`actual_reply_time`)), '分钟'))),"") AS actualOften,
        
/**后来需求改变,用户觉得现实中文的天,小时,分钟太麻烦了,想要总共的小时数、分钟数,但是mysql的TIMEDIFF的方法,是精确到秒的,但是用户又不想要秒。于是乎我又一次进行了更改,使用到了mysql的LEFT函数和LENGTH函数进行了处理弄成了用户想要的样子*/
IFNULL(LEFT(TIMEDIFF(aib.`forecast_reply_time`,aib.`actual_reply_time`),LENGTH(TIMEDIFF(aib.`forecast_reply_time`,aib.`actual_reply_time`))-3),"") AS stipulatedOften,
IFNULL(LEFT(TIMEDIFF(aib.`actual_reply_time`,aib.`created_at`),LENGTH(TIMEDIFF(aib.`actual_reply_time`,aib.`created_at`))-3),"") AS actualOften,

mysql 中两个日期相减获得 天 小时 分钟 或者 小时:分钟的格式的更多相关文章

  1. JAVA基础学习之final关键字、遍历集合、日期类对象的使用、Math类对象的使用、Runtime类对象的使用、时间对象Date(两个日期相减)(5)

    1.final关键字和.net中的const关键字一样,是常量的修饰符,但是final还可以修饰类.方法.写法规范:常量所有字母都大写,多个单词中间用 "_"连接. 2.遍历集合A ...

  2. SQLServer的两个日期相减(间隔)datediff函数

    select datediff(year, 开始日期,结束日期); --两日期间隔年  select datediff(quarter, 开始日期,结束日期); --两日期间隔季  select da ...

  3. 日期字符串转换 and 两个日期相减

    //创建当前日期 NSDate *date = [NSDate date]; //创建日期格式类 NSDateFormatter *dateFormat = [[NSDateFormatter all ...

  4. MySQL 相邻两条数据相减

    <!-- 计算每两次消费的间隔天数 --> SELECT B.MEN_ID,TIMESTAMPDIFF(DAY,B.PRE_DATE,B.CURR_DATE) AS DAYS FROM ( ...

  5. js两个日期相减

    function dateHanle(d1,d2){ if(Date.parse(d1) - Date.parse(d2)==0) { console.log("d1等于d2"); ...

  6. mysql 中时间和日期函数应用

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

  7. mysql 中 时间和日期函数

    From: http://www.cnblogs.com/redfox241/archive/2009/07/23/1529092.html 一.MySQL 获得当前日期时间 函数 1.1 获得当前日 ...

  8. JS两日期相减

    JS两日期相减,主要用到下面两个方法 dateObject.setFullYear(year,month,day) 方法 stringObject.split(separator) 方法 functi ...

  9. mysql日期相减取小时

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

随机推荐

  1. 性能测试中TPS上不去的几种原因

    性能测试中TPS上不去的几种原因 什么叫TPS: TPS(Transaction Per Second):每秒事务数,指服务器在单位时间内(秒)可以处理的事务数量,一般以request/second为 ...

  2. SciPy 特殊函数

    章节 SciPy 介绍 SciPy 安装 SciPy 基础功能 SciPy 特殊函数 SciPy k均值聚类 SciPy 常量 SciPy fftpack(傅里叶变换) SciPy 积分 SciPy ...

  3. windows目标进程注入dll

    在别的程序注入dll 步骤: ,获取目标进程ID,CreateToolhelp32Snapshot()函数; ,获取目标进程句柄,OpenProcess()函数; ,目标进程要一块内存,Virtual ...

  4. POJ 3259:Wormholes bellman_ford判定负环

    Wormholes Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 37906   Accepted: 13954 Descr ...

  5. Linux下Tomcat带日志启动命令

    在Linux环境下,启动Tomcat时我们需要在启动过程中看到日志信息.可以通过下面命令启动Tocmat. ./startup.sh; tailf ../logs/catalina.out或者 ./s ...

  6. 数据结构第二版之(课后题)BF算法病毒感染检测

    //vs2013下编译通过.换别的编译器自行补充头文件和修改源代码#include<iostream> #include<fstream> #include <strin ...

  7. Redis数据类型及其操作

    redis数据类型即操作 1. 字符串 set 设置字符串 格式: set key value 例子: set name kainhuck get 获取字符串的值 格式: get key 例子: ge ...

  8. SQL注入过WAF(11.4 第三十三天)

    WAF是什么? Web应用防护系统(也称:网站应用级入侵防御系统.英文:Web Application Firewall,简称: WAF).也叫Web防火墙,主要是对Web特有入侵方式的加强防护,如D ...

  9. R 数据框的操作

    1.插入一列 根据自带数据集beaver 进行操作,比如插入一列id. > colnames(beaver1) [1] "day" "time" &quo ...

  10. springboot#filter

    _ Filter不能处理用户请求,也不能对客户端生成响应. 主要用于对HttpServletRequest 进行预处理,也可以对HttpServletResponse 进行后处理,是个典型的处理链.完 ...