我在为我的标准查询解析器使用逻辑与时遇到了这个奇怪的问题。我正在查询中搜索术语“steve”和“austin”。我得到了 8 个匹配项,其中只有 2 个包含这两个术语,其余的只包含 steve。仅供参考,我使用 edismax 解析器尝试了相同的查询,它准确地返回了 2 个命中,正如预期的那样。
查询(标准解析器):http://localhost/select?q=all_name:(steve AND austin)&fl=*_name&wt=xml&hl=true&hl.fl=*&hl.simple.pre=<em>&hl.simple.post=</em>&debug=true&indent=true
I am using phonetics on the terms, so terms in highlight do not exactly match steve. I am particularly surprise to see the last result, which lists nothing inside <em> tags.
我尝试突出显示,检查为什么选择了 8 个结果。这是突出显示的输出:
<lst name="highlighting">
<lst name="1852237_1_1">
<arr name="first_name"><str><em>Steve</em></str></arr>
<arr name="last_name"><str><em>Austin</em></str></arr>
<arr name="all_name"><str><em>Steve</em></str></arr>
</lst>
<lst name="1844776_1_1">
<arr name="all_name"><str><em>Steve</em> <em>Austin</em> Productions, LLC</str></arr>
<arr name="full_name"><str><em>Steve</em> <em>Austin</em> Productions, LLC</str></arr>
</lst>
<lst name="3021779_1_1">
<arr name="first_name"><str><em>STEVEN</em> JAY</str></arr>
<arr name="all_name"><str><em>STEVEN</em> JAY</str></arr>
</lst>
..........
<lst name="1871189_1_1">
<arr name="all_name"><str>; Anderson, David; Anderson, Don; Jordon, Gary T; Oliver, James Theodore; Oliver, Jim</str></arr>
<arr name="full_name"><str>; Anderson, David; Anderson, Don; Jordon, Gary T; Oliver, James Theodore; Oliver, Jim</str></arr></lst>
</lst>