如何在cassandra中使用地图类型中的关系运算符?

时间:2016-02-03 11:24:31

标签: dictionary cassandra relational

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 [无效查询]消息=&#34;仅EQ关系   在地图条目&#34;

上受支持

1 个答案:

答案 0 :(得分:0)

  

InvalidRequest:code = 2200 [无效查询]消息=&#34;地图条目仅支持EQ关系&#34;

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