В MySQL я хотел бы преобразовать следующую строку в дату:
28/11/17 14:09:04,491592000
Я использовал следующий формат в str_to_date
:
%d/%m/%y %h:%i:%s,%f
Но это, похоже, работает, когда миллисекунды <= 6 цифр. Что делать, если в миллисекундах больше цифр?
Из документации MySQL:
MySQL 5.7 имеет дробную секундную поддержку значений TIME, DATETIME и TIMESTAMP с точностью до микросекунд (6 цифр)
Поэтому, если вы используете datetime
для хранения этих значений, 6 цифр справа от десятичной точки являются максимально возможной точностью.
В MySQL версии 5.6 и более поздних версий вы можете определить столбец datetime(6)
, который затем может содержать точность до микросекунд. Существует даже функция MICROSECOND
которая может вернуть микросекундный компонент datetime
. В более ранних версиях MySQL доступна только миллисекундная точность.