我正在尝试理解 solr 嵌套查询,但我遇到了语法问题。
我有以下两个索引文档(其中包括):
<doc>
<str name="city">Guarulhos</str>
<str name="name">Fulano Silva</str>
</doc>
<doc>
<str name="city">Fortaleza</str>
<str name="name">Fulano Cardoso Silva</str>
</doc>
如果我查询q="Fulano Silva"~2&defType=edismax&qf=name&fl=score
我有:
<doc>
<float name="score">28.038431</float>
<str name="city">Guarulhos</str>
<str name="name">Fulano Silva</str>
</doc>
<doc>
<float name="score">19.826164</float>
<str name="city">Fortaleza</str>
<str name="name">Fulano Cardoso Silva</str>
</doc>
所以我想如果我查询:
q="Fulano Silva"~2 AND __query__="{!edismax qf=city}fortaleza" &defType=edismax&qf=name&fl=score
我会为第二个文档打更多的分数,但实际上我得到了一个 numFound=0 的空结果集。
我在这里做错了什么?