工作中解决问题汇总

问题背景:MySql中,老系统截止日期字段,最后时分秒存的是00:00:00,但新系统存的是23:59:59

问题诉求:需要统一刷成23:59:59

解决方案:

  1.  使用date_add函数,将日期加上23分59分59秒
    update my_table mt set mt.end_time = date_add(mt.end_time, interval '23:59:59' hour_second) where mt.end_time like '% 00:00:00';

     

  2.  获取年月日,加上23:59:59,然后进行赋值。第二种方案通用性更强,可以处理其它非23:59:59情况
    update my_table my set mt.end_time = CONCAT(date_format(mt.end_time,'%Y-%m-%d'),' 23:59:59') where mt.end_time not like '% 23:59:59';

     

 

你可能感兴趣的:(常见问题)