2014-07-01 62 views
0

我有两个文件,如:Solr的搜索质量提高

<doc> 
    <field name="title">I love world cup</field> 
</doc> 
<doc> 
    <field name="title">I love basketball</field> 
</doc> 

当我输入查询关键字“我爱世界杯”我只希望第一个文件,但得到两个结果。

"docs": [ 
     { 
     "id": "p11112", 
     "title": "I love world cup", 
     "_version_": 1472408699840495600 
     }, 
     { 
     "id": "p11111", 
     "title": "I love basketball", 
     "_version_": 1472408682961567700 
     } 
    ] 

如何找到只包含像“世界杯”文件?

回答

0

这是一个长期的查询:

?q=title:i love world cup 

它将匹配两个文件,因为Solr的解释是这样的查询:

?q=title:i OR love OR world OR cup 

您可以改用AND到包含所有条款只匹配文件在查询中:

?q=title:i AND love AND world AND cup 

如果您一直想使用AND术语之间,你不想手动输入,可以使AND默认使用q.op参数的查询:

?q=title:i love world cup&q.op=AND 

另一种方法是使用短语查询,这将只匹配如果整个短语(用双引号分隔)存在于文档中:

?q=title:"i love world cup"