Cassandra在map字段中使用IN命令选择查询



我创建了一个表"test",并使用CQL使用以下命令插入了一些值。

create table testt(val map<text,text>, id text primary key); insert into testt (val,id) values ({'key':'1'},'1');

当我使用下面的查询检索时,它可以

select * from testt where val['key']='1' allow filtering;

我需要检索多个值,这些值都包含val中的值[键']。使用以下命令引发错误。

select * from testt where val['key'] IN( '1' ) allow filtering;

SyntaxException: <ErrorMessage code=2000 [Syntax error in CQL query] message="line 1:37 no viable alternative at input 'IN' (... testt where val['key'] [IN]...)">

是否有其他方式或方法可以获得所需的输出?

在Cassandra中检索多个键的值的唯一方法是执行多个查询。您可以调整主键,以便通过单个查询获得所需的值。

最新更新