使用CQL从Cassandra中选择Column Slice

时间:2013-09-10 00:32:59

标签: cassandra cql3

我在Cassandra中理解,特别是cqlsh我可以得到一些列。我马上解释一下。这是我的表:

CREATE TABLE movies (
    key text PRIMARY KEY,
    boot text,
    effect text,
    foo text,
    movie text,
    starring text
);

和一些内容:

key       | boot                | effect | foo  | movie         | starring
-----------+-----------------------+--------+------+---------------+----------
  starwars | Revenge of the Nerds3 |   null |  bar |     Star Wars |     null
 star trek |                  null |   null | null | into darkness |     null

现在,我明白我可以从这些专栏中得到一些:比如说,效果,foo和电影如下:

select effect..movie from movies 

我应该获得所有这些列。但是,这是我运行查询时得到的结果:

Bad Request: line 1:7 no viable alternative at input 'effect'

这是我应该做的还是有其他程序或者我的思考/信息不正确?

我的部分假设是基于Are CQL2 column slices and CQL3 wheres on composite keys equivalent?

中显示的内容

1 个答案:

答案 0 :(得分:1)

我认为你将Thrift列与CQL3列混淆。

  1. 使用SELECT中的列名列表,您想要完成的工作非常简单:

    选择所有列:

    SELECT * from movies
    

    仅选择特定列:

    SELECT effect, foo, movie from movies
    
  2. 您可以找到完整的CQL3规范here

  3. 您也可以关注此CQL tutorial