在 Lucene 中,查询多 Field 构造Query ,最先想到MultiFieldQueryParser ,但是构造的时候 必须有个 queryString ,就是搜索一个串,去匹配多个Field 。
有时候有这样的需求,每个 Field 匹配的不一样,如更新索引时,需要更精确匹配到,这样的就没法满足了。
TermQuery query1 = new TermQuery(term1);
TermQuery query2 = new TermQuery(term2);
BooleanQuery query = new BooleanQuery();
query.add(query1, BooleanClause.Occur.SHOULD);
query.add(query2, BooleanClause.Occur.SHOULD);
这样就可以把多个Query 组装在一块。
本文介绍了如何在Lucene中实现对多个字段进行精确查询的方法,通过组合使用TermQuery和BooleanQuery来达到更灵活的搜索需求。
5997

被折叠的 条评论
为什么被折叠?



