【发布时间】:2017-02-28 20:52:20
【问题描述】:
假设我有一个由许多子句组成的复杂查询。
查询子句可以分为“严格”子句和“一般搜索”,次要子句。
我想知道,在不依赖相关性分数的情况下,哪些文档与严格部分完全匹配,即哪个文档满足所有确切要求,哪些文档由于一般搜索而被视为命中。
查询的“严格”部分示例 -
+((+field1.subf1:val1 ConstantScore(field1.subf2.subf3.subf4:"[* TO *]" field1.subf2.subf5:true))^10.0) ((title:"Lorem ipsum dolor sit amet")^0.05) (#((+field1.subf1:val1 ConstantScore(field1.subf2.subf3.subf4:"[* TO *]" field1.subf2.subf5:true))~100^10.0))
在 Elasticsearch 中,named queries 允许我标记严格的子句,然后为每个命中验证满足哪个子句。
如何在 Solr 中完成此操作?
非常感谢, 罗恩
{p.s. - 我正在使用 solr 5.3.1 和 solrj}
【问题讨论】:
-
我写了一个谷歌浏览器插件来解释 Solr 查询chrome.google.com/webstore/detail/solr-query-debugger/…
标签: elasticsearch solr solrj