【发布时间】:2017-05-17 03:35:39
【问题描述】:
-
当我在 Solr 4.0 中分别使用以下两个过滤器查询进行搜索时,它按预期工作。
{!complexphrase inOrder=true}employeeName_t:"Mike R*"empDate_dt:[2016-10-10T00:00:00Z TO 2016-10-10T23:59:59Z] -
但是当我结合这两个查询时,我没有得到正确的搜索结果(无论顺序如何)。
{!complexphrase inOrder=true}employeeName_t:"Mike R*" AND empDate_dt:[2016-10-10T00:00:00Z TO 2016-10-10T23:59:59Z]
这个查询在 Solr 中给了我零个搜索结果
“响应”:{ “找到的数量”:0, “开始”:0, “最大分数”:0, “文档”:[] }
empDate_dt:[2016-10-10T00:00:00Z TO 2016-10-10T23:59:59Z] AND {!complexphrase inOrder=true}employeeName_t:"Mike R*"
而查询顺序的变化给我解析异常如下
“错误”:{ “味精”:“org.apache.solr.search.SyntaxError:org.apache.lucene.queryparser.classic.ParseException:不能 解析 'employeeName_t:\"Mike': 第 1 行第 21 列出现词法错误。遇到:之后:\"\\"Mike\"",代码:400 }
在 solr 中使用 ComplexPhraseQueryParser 进行部分搜索。需要同时使用这两个查询。对此的任何建议将不胜感激。
【问题讨论】: