我知道mysql不支持以millisecond精度存储时间戳列。
我的问题:我可以编写一个mysql函数,它将当前时间输出为BIGINT(13),精确到毫秒级。
例如,now()输出时间戳:
mysql> select now();
+---------------------+
| now() |
+---------------------+
| 2010-10-27 11:24:23 |
+---------------------+
我想写一个mysql函数,比如输出bigint(13)的ts(),例如。
mysql> select ts();
+---------------------+
| ts() |
+---------------------+
| 1288172185517 |
+---------------------+
我想要这样做的原因是能够使用函数ts()的值填充列的默认值
e..g
`MY_TIMESTAMP_COLUMN` BIGINT(13) DEFAULT ts(),
答案 0 :(得分:0)
您发布的文章链接指的是此类函数的实现:
http://bugs.mysql.com/bug.php?id=8523
如果用sprinf
替换对tv.tv_sec * 1000000 + tv.tv_usec
的调用,该函数将返回自纪元以来的微秒数的本地时间。