【问题标题】:Is it possible for cassandra cqlsh ORDER BY with out using composite and super column?cassandra cqlsh ORDER BY 是否可以不使用复合列和超级列?
【发布时间】:2013-10-06 02:20:14
【问题描述】:

如果我在我的表中使用单主键,那么在 cassandra cqlsh 查询中可以使用 ORDER BY。有什么解决办法吗?

【问题讨论】:

    标签: cassandra cqlsh


    【解决方案1】:

    cassandra cqlsh ORDER BY 是否可以不使用复合列和超级列?

    --> 可以,前提是您将“排序列”定义为第一个聚类组件(例如复合主键的第二个组件

    引用官方文档:

    ORDER BY 子句只能选择单个列。该列必须 成为复合 PRIMARY KEY 中的第二列。这也适用于 主键中包含两个以上列组件的表。 排序可以按升序或降序进行,默认 升序,并使用 ASC 或 DESC 关键字指定。

    当您使用 WITH COMPACT STORAGE 选项(不使用复合)定义表时,这也适用。

    【讨论】:

    • 如果我的表结构类似,您的正确答案是 CREATE TABLE sample(id varchar PRIMARY KEY ,name varchar, lanme varchar, time timeuuid) WITH COMPACT STORAGE ;可以订购吗
    • 因为我的 erlang 客户端不支持复合列这就是我尝试这样的查询的原因,有没有在 cassandra cqlsh 中不使用复合主键的解决方案
    • "在 cassandra cqlsh 中是否有不使用复合主键的解决方案" --> 不,如果你想做 ORDER BY,复合主键是强制性的
    猜你喜欢
    • 2011-08-14
    • 1970-01-01
    • 2016-02-05
    • 1970-01-01
    • 1970-01-01
    • 2012-08-26
    • 2017-01-09
    • 1970-01-01
    • 2017-02-12
    相关资源
    最近更新 更多