0

我对 cassandra 很陌生,是否有任何命令可以仅从 cassandra 的列族中获取值?

如果我使用以下命令:

[default@CustomKeySpace] get user['peter'];
=> (column=friday, value=10, timestamp=1362290522592000)

我得到:

Returned 1 results.
Elapsed time: 8.4 msec(s).

在上面的结果中,我可以只抓取价值部分吗?如果我给出类似的命令get user['peter'][xxx],我应该得到输出值 10。

提前致谢。

4

2 回答 2

0

你的命令

get user['peter'];

正在读取整行 peter,其中可能包含许多列。在你的情况下,它只有一个,星期五。要检索,您可以使用

get user['peter']['friday'];

假设您的列比较器是字符串类型,否则您可以使用

get user['peter'][ascii('friday')];

但是,这仍然会打印时间戳,因为每列都有一个时间戳。当您编写代码时,您将返回一个列对象,您可以从中提取值。

于 2013-03-03T10:05:59.917 回答
0

在 Cassandra(无论是 cli 还是 cqlsh)中没有办法做到这一点,因为 thrift 返回的存储单元始终是列、值、时间戳。

于 2013-03-03T14:02:16.207 回答