如何在Cassandra表中使用自定义索引在Select语句中查询

3
我有一个由Solr在Cassandra表上创建的自定义索引。
CREATE CUSTOM INDEX custom_index ON table_name (column) USING 'com.datastax.bdp.search.solr.Cql3SolrSecondaryIndex';

据我所知,在Cassandra的select子句中,我们只能在where子句中使用主键来进行查询。 我是否可以在where子句中使用自定义索引呢?
2个回答

3

非常感谢。通过这个,我注意到我们需要像WHERE solr_query='name: cat name: dog -name:fish'这样进行查询。是否有其他方法可以使用where <column_name> = 'XXX'? - Abhijit Gaikwad

1

你可以这样做。在where子句中,你可以使用分区键和索引。但是如果你想使用没有分区键的索引列,你必须指定ALLOW FILTERING(参见下面的例子)。

SELECT * FROM <myColumnFamilly> WHERE <column> > 100 ALLOW FILTERING;

当然,在这个例子中,类型必须是数字类型。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接