CQL select语句只返回行键

时间:2013-01-07 06:09:32

标签: cassandra cql

列族

create column family markers
with comparator = UTF8Type 
and default_validation_class=UTF8Type 
and key_validation_class=UUIDType 
and column_metadata=
[
 {
  column_name : userid,
  validation_class : UTF8Type, index_type: KEYS
 },
 {
  column_name : activated,
  validation_class : UTF8Type, index_type: KEYS
 },
 {
  column_name : latitude,
  validation_class : DoubleType, index_type: KEYS
 },
 {
  column_name : longtitude,
  validation_class : DoubleType, index_type: KEYS
 },
 {
  column_name : altitude,
  validation_class : DoubleType, index_type: KEYS
 },
 {
  column_name : area,
  validation_class : DoubleType, index_type: KEYS
 },
 {
  column_name : title,
  validation_class : UTF8Type, index_type: KEYS
 },
 {
  column_name : memo,
  validation_class : UTF8Type, index_type: KEYS
 },
 {
  column_name : picdata,
  validation_class : BytesType
 }];

当我查询'select * from(([rowkeys])'中的标记时,结果只包含rowkey。

但如果我查询'select * from markers',则结果包含所有列。

为什么如果使用'where in()',结果只有rowkey ???

对不起我的英语..

有人帮我TT

1 个答案:

答案 0 :(得分:0)

您的CQL语法错误。

应该是:

SELECT * FROM markers WHERE <CLAUSE>;

在您的示例中,您的'in([rowkeys])'语句无效。我很惊讶它甚至可以从错误的CQL语句中得到结果。

工作查询将是:

SELECT * FROM markers where latitude > 60.0;