首先,我对Solr的使用不是很有经验,所以我希望这不是一个愚蠢的问题..
我在Solr查询中遇到一些意外行为。假设查询为q="Foo:"Bar"
。现在将其设置为q="Foo:"Bar" AND()
,我们将获得更多结果,这些结果似乎是随机的,并且肯定不满足条件“ Foo” =“ Bar”。
我在这里错过了什么吗?额外的条件返回的结果更多而不是更少,这似乎是不合逻辑的。
答案 0 :(得分:2)
您的示例查询不是有效的Solr查询-如果要在字段“ Foo”中查询值“ Bar”,请执行Foo:Bar
。 AND
子句用于多个术语之间,以合并所有术语(即Foo:Bar AND Spam:Eggs
)的结果。
您的示例可能只是被解析为默认搜索字段中某个地方的Foo:Bar
或值AND
。