lucene中的计数和子计数
我在lucene中的字段是产品名称、类型和子类型 我正在用abc查询类型,这将导致我得到类型为abc的产品。 这种abc类型的产品有pqr和xyz子类型 我可以使用TopCoreDocCollector.getTotalHits()获取xyz类型的总计数 但我想得到sub_类型的计数。即pqr和xyz 我怎样才能得到它 任何答复都会对我大有帮助lucene中的计数和子计数,lucene,Lucene,我在lucene中的字段是产品名称、类型和子类型 我正在用abc查询类型,这将导致我得到类型为abc的产品。 这种abc类型的产品有pqr和xyz子类型 我可以使用TopCoreDocCollector.getTotalHits()获取xyz类型的总计数 但我想得到sub_类型的计数。即pqr和xyz 我怎样才能得到它 任何答复都会对我大有帮助 提前感谢。一种方法是基于abc查询创建一个筛选器,然后使用该筛选器约束子类型查询的结果 IndexSearcher searcher = // sear
提前感谢。一种方法是基于abc查询创建一个筛选器,然后使用该筛选器约束子类型查询的结果
IndexSearcher searcher = // searcher to use
int nDocs = 100; // number of docs to retrieve
QueryParser parser = // query parser to use
Query typeQuery = parser.parse("type:abc");
Filter f = CachingWrapperFilter(new QueryWrapperFilter(typeQuery));
Query subtypeQuery = parser.parse("sub_type:xyz");
TopDocs results = searcher.search(subtypeQuery, f, nDocs);
另一个想法是:如果您预先知道您感兴趣的子类型,您可以简单地将类型和子类型添加到查询中:+type:abc+sub_type:xyz
最后,如果您有这些查询,您可以考虑使用SOLR来索引数据。