如何在 2 个字段中搜索 2 个不同的关键字? Lucene.net
How to search 2 fields for 2 different keywords? Lucene.net
我如何在 Lucene.net
中执行这样的搜索?
Return Title
字段等于 "someTitle" 且 isPrivate
字段等于 "false"?
的所有结果
我想我可以创建 2 个索引,一个包含所有文档,一个仅包含非私有文档。但如果只用 1 个索引就可以做到更好。
您可以使用 QueryParser's query syntax:
+Title:someTitle +isPrivate:false
或者将要搜索的两个字词组合成 BooleanQuery:
BooleanQuery bq = new BooleanQuery();
bq.Add(new TermQuery(new Term("Title", "someTitle"), Occur.MUST);
bq.Add(new TermQuery(new Term("isPrivate", "false"), Occur.MUST);
我如何在 Lucene.net
中执行这样的搜索?
Return Title
字段等于 "someTitle" 且 isPrivate
字段等于 "false"?
我想我可以创建 2 个索引,一个包含所有文档,一个仅包含非私有文档。但如果只用 1 个索引就可以做到更好。
您可以使用 QueryParser's query syntax:
+Title:someTitle +isPrivate:false
或者将要搜索的两个字词组合成 BooleanQuery:
BooleanQuery bq = new BooleanQuery();
bq.Add(new TermQuery(new Term("Title", "someTitle"), Occur.MUST);
bq.Add(new TermQuery(new Term("isPrivate", "false"), Occur.MUST);