应用程序中经常需要存储更高精度的时间戳。 MySQL 支持小数秒时间数据类型,为此提供了解决方案。
要声明具有毫秒精度的列,请使用 DATETIME(3) 或 TIMESTAMP(6) 来实现微秒精度。对于 5.6.4 之前的 MySQL 版本,建议升级以使用这些功能。
要获取毫秒精度的当前时间,请使用 NOW(3)。对于自 Unix 纪元以来以毫秒表示的时间戳,请使用 FROM_UNIXTIME(ms * 0.001) 将其转换为 DATETIME(3) 格式。
如果使用较旧的 MySQL 版本并需要亚秒级精度,请考虑使用 BIGINT 或 DOUBLE 列将时间戳存储为数字。 FROM_UNIXTIME(col * 0.001) 仍可用于转换它们。要将当前时间存储在此类列中,请使用 UNIX_TIMESTAMP() * 1000.
以上是如何在 MySQL 中存储和检索毫秒精度时间戳?的详细内容。更多信息请关注PHP中文网其他相关文章!