如何以毫秒为单位获取时间以及如何将 5 分钟添加到 mySql 中的毫秒数

Sur*_*vel 4 mysql datetime

如何以毫秒为单位获取当前时间以及如何在 mySql 中添加 5 分钟

And*_*y M 6

MySQL 5.6.4 引入了对时间值小数秒的更全面支持。CURTIME 函数现在可以返回最多微秒的当前时间。要以毫秒为单位返回它,您可以这样调用它:

CURTIME(3)
Run Code Online (Sandbox Code Playgroud)

但是,这将为您提供一个time值,而不是我假设您所追求的整数毫秒。要获得毫秒数,您可以应用 UNIX_TIMESTAMP 函数CURTIME(3)并将结果乘以 1000:

UNIX_TIMESTAMP(CURTIME(3)) * 1000
Run Code Online (Sandbox Code Playgroud)

结果将是decimal比例为 3 的a 。unsigned如果您需要结果为实际整数类型,您可以进一步将其转换为:

CAST(UNIX_TIMESTAMP(CURTIME(3)) * 1000 AS unsigned)
Run Code Online (Sandbox Code Playgroud)

以毫秒为单位的当前时间这么多。至于加5分钟,你可以在最后的结果上加300,000:

CAST(UNIX_TIMESTAMP(CURTIME(3)) * 1000 AS unsigned) + 300000
Run Code Online (Sandbox Code Playgroud)

或者您可以在乘法之前添加 300(秒)(类似于 Arnel Aves 的建议):

CAST((UNIX_TIMESTAMP(CURTIME(3)) + 300) * 1000 AS unsigned)
Run Code Online (Sandbox Code Playgroud)

这样意图可能会更清楚。但如果将间隔直接添加到 CURTIME 可能会更清楚:

CAST(UNIX_TIMESTAMP(CURTIME(3) + INTERVAL 5 MINUTE) * 1000 AS unsigned)
Run Code Online (Sandbox Code Playgroud)

附加信息: