在solr中,如果我们默认传递两个fq,它将把它作为AND,而不是如何将它作为或。
谢谢, 的Subbarao。
答案 0 :(得分:2)
Solr 5.4及更高版本了解filter syntax in the body of main query(在页面上搜索"过滤器(...)")。所以,你可以这样做:
fq = filter(inStock:true)过滤器(价格:[* TO 100])
您还可以使用变量替换,通过将每个过滤器放入其自己的变量中来使这些变量更具可读性。
这些有趣的概念中有几个在Hoss' presentation at Lucene/Solr Revolution 2016中得到了很好的解释。
答案 1 :(得分:0)
过滤器是独立应用的,因此如果您想要一个OR过滤器,您必须在单个过滤器中应用它:
fq=school:"srm" OR class:"first"