YYYY-MM-DD HH:MM:SS [.fraction]格式的MySQL更新日期字段

时间:2017-10-08 18:39:59

标签: java mysql mybatis

我正在使用MySQL。我创建了一个包含列LAST_SELECTED datetime(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6)的表。插入记录后,我得到时间戳为6位微秒精度(2017-10-08 08:06:53.812136)。但是当通过代码(MyBatis - ORM)更新列时,我失去了微秒级别的精度(2017-10-08 08:13:42.000000)。有没有办法实现日期的真实值(微秒级精度 - YYYY-MM-DD HH:MM:SS[.fraction])?

以下是通过MyBatis执行的查询 -

UPDATE MYTABLE
SET MYTABLE.LAST_SELECTED = current_timestamp() 

1 个答案:

答案 0 :(得分:1)

您可以将“6”作为参数传递:

UPDATE MYTABLE
    SET MYTABLE.LAST_SELECTED = current_timestamp(6) ;

您可以通过以下方式直接体验:

select date_format(current_timestamp(), '%Y-%m-%d %H:%i:%s.%f'),
       date_format(current_timestamp(6), '%Y-%m-%d %H:%i:%s.%f')