Y_csgoto 2019-10-22 20:52 采纳率: 57.1%
浏览 996
已采纳

请问mysql里日期时间相加减要怎么做呢?

各位大佬,小弟现在有一个一个任务,就是在mysql的A表中创建一个字段,类型是datetime
,然后需要它的默认值是A表中的另一个字段(类型为time),和B表中的一个字段(类型为datetime)的和,请问datetime和time类型的值要用什么函数加在一起呀,因为最后要求精确到秒,所以不能转换为日期再加和

求各位大佬解答

  • 写回答

3条回答 默认 最新

  • Kevin.Y.K 2019-10-23 09:40
    关注

    time 01:23:57
    datetime 2019-10-23 10:00:00

    你的问题应该是在datetime的基础上加上time时间段,变为2019-10-23 11:23:57吧

    给你小时的相加demo,分钟和秒钟如法炮制:

    select  DATE_FORMAT(date_add(str_to_date('2019-10-23 10:00:00','%Y-%m-%d %H:%i:%s'), INTERVAL DATE_FORMAT(str_to_date('01:23:57','%H:%i:%s'), '%H') HOUR ),'%Y-%m-%d %H:%i:%s')
    from dual; //2019-10-23 11:00:00
    

    str_to_date('2019-10-23 10:00:00','%Y-%m-%d %H:%i:%s')换成你的datetime字段
    str_to_date('01:23:57','%H:%i:%s')换成你的time字段

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?