我在索引中有三个字段;名字、姓氏和 isManager(1 或 0)。如何使用 QueryParser 并将 isManager (作为全局过滤器)添加到 1 ,以便我只有效地搜索经理?
因此,如果用户在“firstname:john”中搜索/传递,我想添加/附加“isManager:1”作为全局过滤器。一种解决方案是将“NOT isManager:0”附加到所有用户的查询字符串......但想知道是否还有其他首选方式。
我在索引中有三个字段;名字、姓氏和 isManager(1 或 0)。如何使用 QueryParser 并将 isManager (作为全局过滤器)添加到 1 ,以便我只有效地搜索经理?
因此,如果用户在“firstname:john”中搜索/传递,我想添加/附加“isManager:1”作为全局过滤器。一种解决方案是将“NOT isManager:0”附加到所有用户的查询字符串......但想知道是否还有其他首选方式。
使用 FilteredQuery http://lucene.apache.org/core/4_0_0/core/org/apache/lucene/search/FilteredQuery.html包装从 QueryParer 返回的 Query 对象