• 关于日期相加减问题


    MYSQL数据库中

    addtime()

    为日期加上指定秒数

    select addtime(now(),1); -- 加1秒

    adddate()

    有两种用法,第二个参数直接填数字的话是为日期加上指定天数,填interval的话是为日期加上指定的interval时间。

    select adddate(now(),1); -- 加1天
    select adddate(now(), interval 1 day); -- 加1天
    select adddate(now(), interval 1 hour); --加1小时
    select adddate(now(), interval 1 minute); -- 加1分钟
    select adddate(now(), interval 1 second); -- 加1秒
    select adddate(now(), interval 1 microsecond); -- 加1毫秒
    select adddate(now(), interval 1 week); -- 加1周
    select adddate(now(), interval 1 month); -- 加1月
    select adddate(now(), interval 1 quarter); -- 加1季
    select adddate(now(), interval 1 year); -- 加1年

    date_add()

    为日期增加一个时间间隔,这个只能使用interval时间作为参数,用法和adddate()一致

    select date_add(now(), interval 1 day); -- 加1天
    select date_add(now(), interval 1 hour); -- 加1小时
    select date_add(now(), interval 1 minute); -- 加1分钟
    select date_add(now(), interval 1 second); -- 加1秒
    select date_add(now(), interval 1 microsecond); -- 加1毫秒
    select date_add(now(), interval 1 week); -- 加1周
    select date_add(now(), interval 1 month); -- 加1月
    select date_add(now(), interval 1 quarter); -- 加1季
    select date_add(now(), interval 1 year); -- 加1年 

     subtime()  

    为日期减去指定秒数

    select subtime(now(), 1); -- 减1秒 

    subdate()

    与adddate()函数用法一致,有两种用法,第二个参数直接填数字的话是为日期减去指定天数,填interval的话是为日期减去指定的interval时间

    select subdate(now(),1); -- 减1天
    select subdate(now(), interval 1 day); -- 减1天
    select subdate(now(), interval 1 hour); --减1小时
    select subdate(now(), interval 1 minute); -- 减1分钟
    select subdate(now(), interval 1 second); -- 减1秒
    select subdate(now(), interval 1 microsecond); -- 减1毫秒
    select subdate(now(), interval 1 week); -- 减1周
    select subdate(now(), interval 1 month); -- 减1月
    select subdate(now(), interval 1 quarter); -- 减1季
    select subdate(now(), interval 1 year); -- 减1年 

    date_sub()

    与date_add()函数用法一致,为日期减去一个时间间隔,这个只能使用interval时间作为参数

    select date_sub(now(), interval 1 day); -- 减1天
    select date_sub(now(), interval 1 hour); --减1小时
    select date_sub(now(), interval 1 minute); -- 减1分钟
    select date_sub(now(), interval 1 second); -- 减1秒
    select date_sub(now(), interval 1 microsecond); -- 减1毫秒
    select date_sub(now(), interval 1 week); -- 减1周
    select date_sub(now(), interval 1 month); -- 减1月
    select date_sub(now(), interval 1 quarter); -- 减1季
    select date_sub(now(), interval 1 year); -- 减1年

    示例:

    select date_add(now(), interval 1 month) addTime,DATE_SUB(now(), interval 1 month) AS subTime 

     Java程序中

    1. public static void main(String[] args) throws ParseException {
    2. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    3. Date date = new Date();
    4. System.out.println(sdf.format(date));
    5. date = addDay(date, 3,-18);
    6. System.out.println(sdf.format(date));
    7. }
    8. private static Date addDay(Date date, int days,int hour) {
    9. Calendar calendar = Calendar.getInstance();
    10. calendar.setTime(date);
    11. calendar.add(Calendar.DATE, days);
    12. calendar.add(Calendar.HOUR_OF_DAY, hour);
    13. return calendar.getTime();
    14. }

     

  • 相关阅读:
    Mybaits执行sql文件
    Vue——props配置
    企业网站的制作流程是什么?设计和制作一个网站需要多长时间?
    Baklib经验分享 | 一些搭建帮助中心的攻略
    Ubuntu20.04 /dev/nvme0n1p5: clean,nnnnn/mmmmmfiles,nnnnnnn/mmmmmmblocks 解决过程
    mysql从 30248s 到 0.001s,SQL优化的魅力!
    登录之后右上角改变 进入登录状态
    Vue 404处理与钩子函数
    golang JWT原理介绍
    基于复合粒子群优化的模糊神经预测控制的研究(Matlab代码实现)
  • 原文地址:https://blog.csdn.net/qq_41596778/article/details/125429455