2017-09-24 89 views
0

我试图在单个(相同)字段上使用过滤器条件获取solr记录,条件是或者middleName应该为null或middleName应该是'BOH'。我正在使用下面的表达式不工作。任何其他的选择呢?在相同的字段上使用相反条件的solr过滤器查询

"fq":"-middleName:[* TO *] OR middleName:BOH" 

在的Sametime,如果我改变的条件为中间名应有的价值或中间名应该是“BOH”,它是工作,什么玄机?

"fq":"middleName:[* TO *] OR middleName:BOH" 

回答

0

两件事情:

  1. 是FQ = ...不是FQ:...注意到等号
  2. 尝试

    FQ =(*:* AND - 中间名:[* TO *])OR中间名:BOH

+0

“fq”-syntax [来自JSON结构化请求](https://cwiki.apache.or克/合流/显示/ solr的/ JSON +请求+ API)。而为什么'*:* -middleName ..'应该工作的原因是因为你需要有东西来减去命中。 Solr通常将这个附加在你的查询前面,以便进行简单的查询,所以大多数人都没有注意到。 – MatsLindh

相关问题