【问题标题】:How to use relational operators in map type in cassandra?如何在 cassandra 的地图类型中使用关系运算符?
【发布时间】:2016-05-12 13:42:29
【问题描述】:
create table tbl_master_values (
dbid int primary key,
user_dbid int, reg_dbid int,
module_dbid int,
fields_value map<text,frozen<list<text>>>,
created_date timestamp,
modified_date timestamp);

CREATE INDEX idx_fields_value ON tbl_master_values (Entries(fields_value));

fields_value 列包含此值:

{'287': ['28'], '288': [''], '289': [''], '291': ['33'], '295': [''],'309': ['214', '215']}

现在我想要这样:

select * from tbl_master_values where fields_value['287'] > 20;

显示以下错误

InvalidRequest: code=2200 [Invalid query] message="只有 EQ 关系 地图条目支持”

【问题讨论】:

    标签: dictionary cassandra relational


    【解决方案1】:

    InvalidRequest: code=2200 [Invalid query] message="地图条目仅支持 EQ 关系"

    很清楚。不,您不能使用原生 Cassandra 二级索引进行范围扫描(例如不等式关系),这是不可能的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-19
      • 2018-08-22
      • 2013-10-16
      • 2014-11-29
      • 1970-01-01
      • 2020-07-11
      • 1970-01-01
      相关资源
      最近更新 更多