• mysql的内建日期处理函数


    下面的表格列出了MySQL 中最重要的内建日期函数:

    函数描述
    NOW() 返回当前的日期和时间
    CURDATE() 返回当前的日期
    CURTIME() 返回当前的时间
    DATE() 提取日期或日期/时间表达式的日期部分
    EXTRACT() 返回日期/时间按的单独部分
    DATE_ADD() 给日期添加指定的时间间隔
    DATE_SUB() 从日期减去指定的时间间隔
    DATEDIFF() 返回两个日期之间的天数
    DATE_FORMAT() 用不同的格式显示日期/时间

     

     

    时间差函数(TIMESTAMPDIFF、DATEDIFF)

    需要用MySQL计算时间差,使用TIMESTAMPDIFF、DATEDIFF,记录一下实验结果

    --0
    select datediff(now(), now());
    
    --2
    select datediff('2015-04-22 23:59:00', '2015-04-20 00:00:00');
    
    --2
    select datediff('2015-04-22 00:00:00', '2015-04-20 23:59:00');
    
    --1
    select TIMESTAMPDIFF(DAY, '2015-04-20 23:59:00', '2015-04-22 00:00:00');
    
    --2
    select TIMESTAMPDIFF(DAY, '2015-04-20 00:00:00', '2015-04-22 00:00:00');
    
    --2
    select TIMESTAMPDIFF(DAY, '2015-04-20 00:00:00', '2015-04-22 12:00:00');
    
    --2
    select TIMESTAMPDIFF(DAY, '2015-04-20 00:00:00', '2015-04-22 23:59:00');
    
    --71
    select TIMESTAMPDIFF(HOUR, '2015-04-20 00:00:00', '2015-04-22 23:00:00');
    
    --4260
    select TIMESTAMPDIFF(MINUTE, '2015-04-20 00:00:00', '2015-04-22 23:00:00');

    MySQL 取得两个时间相差的分钟数

    -- 取得相隔秒数
    SELECT UNIX_TIMESTAMP('2012-06-09 00:10:11')-UNIX_TIMESTAMP('2012-06-09 00:09:12')
    
    -- 取得相隔分钟数
    SELECT round((UNIX_TIMESTAMP('2012-06-09 00:10:11')-UNIX_TIMESTAMP('2012-06-09 00:09:12'))/60)

    日期转换计算函数(date_add、day、date_format、str_to_date)

    -- 用日期与字符串转换,计算当月第一天、下月第一天
    select curdate() as '当前日期', 
    DATE_FORMAT(curdate(), '%Y-%m') as '当前月份', 
    str_to_date(concat(DATE_FORMAT(curdate(), '%Y-%m'), '-01'), '%Y-%m-%d') as '当前月的第一天', 
    date_add(str_to_date(concat(DATE_FORMAT(curdate(), '%Y-%m'), '-01'), '%Y-%m-%d'), interval 1 month) as '下月的第一天';
    
    -- 当前月的最后一天
    select last_day(curdate());
    
    -- 下月第一天
    select date_add(last_day(curdate()), interval 1 day);
    
    -- 当天为当月的第几天
    select day(curdate());
    
    -- 当月第一天
    select date_add(curdate(), interval 1-(day(curdate())) day);
  • 相关阅读:
    springboot p6spy 打印完整sql
    mybatis报Invalid bound statement (not found) 分析
    springboot Actuator健康检查
    springboot idea 配置热加载
    面试加笔试大全
    面试题(二)
    面试题(一)
    AJAX技术简介及入门实例
    Google的AJAX翻译程序,使你快速全球化
    ASP.NET调用javascript脚本的方法总结
  • 原文地址:https://www.cnblogs.com/shamo89/p/8685935.html
Copyright © 2020-2023  润新知