Astyanax Cassandra双型精密

时间:2014-05-09 20:39:47

标签: cql3 astyanax cassandra-2.0 cqlsh

我正在尝试从具有双类型列的Cassandra表中获取Double值。我用CQL3语法创建了表:

CREATE TABLE data_double (
    datetime timestamp,
    value double,
    primary key (datetime)
    );

我插了一行:

INSERT INTO data_double (datetime,  value) VALUES ('111111111', 123.456);  

当我这样做时:

SELECT * from data_double;

我得到的值是 123.46

为什么值会四舍五入?

由于

1 个答案:

答案 0 :(得分:9)

默认情况下,cqlsh实用程序仅显示浮点数的5位精度。

您可以通过创建包含以下内容的cqlshrc文件来增加此功能:

[ui]
float_precision = 10

cqlsh docs page提供了有关可用选项的更多详细信息。

更新: cssshrc文件的位置在Cassandra中的某个位置发生了变化。新的默认位置为~/.cassandra/cqlshrc。您还可以使用--cqlshrc命令行选项在不同位置使用文件。