Nodejs cassandra 数据类型问题

Jac*_*rky 4 cql cassandra node.js

我正在使用 node-cassandra-cql 驱动程序(https://github.com/jorgebay/node-cassandra-cql)将样本选择到 cassandra 列族中。

我的 cf 有三列具有该数据类型:

1 - value -> text
2 - date  -> timestamp
3 - hits  -> counter
Run Code Online (Sandbox Code Playgroud)

使用 nodeJS 获取行我这样做:

client.execute('SELECT date,value,hits FROM cf LIMIT 100', [],
      function(err, result) {
        if(err){
            var error = {error:true,message:err};
            res.send(error);
        }
        else{
            var trends = {};
            for(var i=0;i<result.rows.length;i++){
                var row      = result.rows[i];
                console.log(row.date);
                console.log(row.hits);
            }
        }
        }
);
Run Code Online (Sandbox Code Playgroud)

控制台日志给了我:

{
    "low": 1342763392,
    "high": 323,
    "unsigned": false
}
{
    "low": 1,
    "high": 0,
    "unsigned": false
}
Run Code Online (Sandbox Code Playgroud)

我需要做什么才能获得正确的价值?

谢谢!

jor*_*ebg 5

Cassandra 计数器列值是一个 64 位有符号整数(bigints),在 Node.js 驱动程序中表示为Google Closure 的 Long。

要获取 bigint 的十进制值的字符串表示形式,可以使用 #toString() 方法。

//"1", "2", ...
row.hits.toString();
Run Code Online (Sandbox Code Playgroud)