我有一个非常简单的问题,但我不完全清楚为什么会发生这种情况以及区别是什么。
对多值字段进行简单的Solr搜索:
field_name:ABC AND DEF
field_name:(ABC AND DEF)
它们返回的结果完全不同。我知道方括号是用于分组的,但是我不明白区别。似乎很微妙。
非常感谢。
第一个查询没有执行您认为正在执行的操作。
field_name:ABC AND DEF
这被解析为:
field_name:ABC AND <default search field>:DEF
这与第二个示例不同,后者被解析为:
field_name:ABC AND field_name:DEF
在第一个示例中,查询的第二部分是针对索引中定义为默认搜索字段的任何字段(如果设置为df
,则查询本身也为默认字段)。