2
我正在使用Linux和MySQL 5.6将一个15位数字计算到MySQL的BIGINT列中
我想在MySQL的BIGINT列中存储一个15位的NUMBER。
数量的计算公式为:
10000 * (date +"%s") + ` date +"%N" | cut -c1-5 `
其中%s是10位数字信号出现时间 和%N是纳秒
我如何计算这个数字在MySQL 5.6的SQL语句?
Select 10000 * UNIX_TIMESTAMP()
可以做第一部分。
如何做好第二部分
您是否想从日期时间获得新纪元时间并将其存储到BIG INT Column? –
'Unix_timestamp()* 1000000000'自1970-01-01 00:00:00开始提供nano秒。从[docs](https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html):**如果不带参数调用,则返回一个Unix时间戳(自' 1970-01-01 00:00:00'UTC)作为无符号整数。如果使用date参数调用UNIX_TIMESTAMP(),则它会返回自1970年1月1日“1970-01-01 00:00:00”以来秒数的值。日期可能是DATE字符串,DATETIME字符串,TIMESTAMP或格式为YYMMDD或YYYYMMDD的数字。** – Fr0zenFyr
Unix_timestamp()自1970-01-01 00:00:00以来返回秒(不是纳秒)。在MySQL中,[Select Unix_timestamp()* 1000000000]将在最后得到一个所有ZEROS的数字,而不是纳秒 –