MYSQL中的当前时间(以毫秒为单位)

时间:2015-04-02 17:21:11

标签: mysql

如何在MySQL中以毫秒为单位获取当前时间。

到目前为止,我得到的是UNIX_TIMESTAMP()

但它会以秒为单位返回当前时间。

但我希望自MySQL'1970-01-01 00:00:00'以来,UTC中的当前时间为毫秒

有任何建议吗?

2 个答案:

答案 0 :(得分:5)

查看documentation,听起来像是你想要的

NOW(3)

...其中值3用于指定您想要3位亚秒级精度,即毫秒。 (遗憾的是,文档中没有一个示例显示正在使用,所以检查这个对我来说相对比较棘手......)

要将其作为“自Unix时代以来的毫秒”值,您可能想要使用:

UNIX_TIMESTAMP(NOW(3)) * 1000

答案 1 :(得分:1)

这是我的答案;

mysql> Select curtime(4);
+------------+
| curtime(4) |
+------------+
| 13:27:20   |
+------------+
1 row in set (0.00 sec)

或者也可以这样做:

mysql> select conv( 
    ->             concat(
    ->                    substring(uid,16,3), 
    ->                    substring(uid,10,4), 
    ->                    substring(uid,1,8))
    ->                    ,16,10) 
    ->             div 10000 
    ->             - (141427 * 24 * 60 * 60 * 1000) as current_mills
    -> from (select uuid() uid) as alias;
+---------------+
| current_mills |
+---------------+
| 1427995791797 |
+---------------+
1 row in set (0.00 sec)