在微秒内插入值时遇到问题

时间:2019-04-23 09:33:16

标签: cassandra

我正在使用timestamp数据类型及时插入,但无法以微秒为单位提供值。可以以微秒为单位插入值,还是只需花费毫秒即可。

cqlsh:cassandradb> select * from time_stamp;

 id | name    | t
----+---------+---------------------------------
  1 | deepank | 2015-02-16 06:30:24.000000+0000
  2 |    arun | 2016-02-16 06:35:24.483000+0000

这是我插入的内容,但是我不希望这个值。当我在micro中插入时,我仅以毫秒为单位插入了值,因此出现以下错误     (2列)     cqlsh:cassandradb>从time_ stamp选择ID,名称,blobAsBigint(timestampAsBlob(t));

 id | name    | system.blobasbigint(system.timestampasblob(t))
----+---------+------------------------------------------------
  1 | deepank |                                  1424068224000
  2 |    arun |                                  1455604524483

(2行) 在此,我使用了blob,但我认为它运行不顺利。

cqlsh:cassandradb> insert into time_stamp(id,name, t)values(3,'tarun','2015-02-16 06:30:2.84325');
InvalidRequest: Error from server: code=2200 [Invalid query] message="Unable to coerce '2015-02-16 06:30:2.84325' to a formatted date (long)"

cqlsh:cassandradb> insert into time_stamp(id,name, t)values(3,'tarun','2015-02-16 06:30:2.8432');
InvalidRequest: Error from server: code=2200 [Invalid query] message="Unable to coerce '2015-02-16 06:30:2.8432' to a formatted date (long)"

cqlsh:cassandradb> insert into time_stamp(id,name, t)values(3,'tarun','2015-02-16 06:30:2.842');``
last value is taken 

我希望它可以在几微秒内插入值; 这样输出将是六位数。

1 个答案:

答案 0 :(得分:2)

Cassandra中的时间戳具有毫秒级的分辨率,并且时间戳字符串中.后仅应使用3位数字。微秒分辨率仅用于记录的WriteTime。

对于某些未知的原因,cqlsh以微秒的分辨率输出数据,恕我直言,这是一个巨大的UX问题...