如何使SOLR搜索功能根据搜索输入顺序返回结果

时间:2019-08-20 09:27:12

标签: solr solr-query-syntax edismax dismax

im使用SOLR在多值字段上执行文本查询,但不会根据输入内容返回。我在字段上使用带有标准标记生成器的edimax。

例如,我搜索文本“ A B C”,但我得到的订单结果很奇怪 结果1:“ A C B” 结果2:“ A B C” 结果3:“ A C B”

我如何使结果#2首先出现。

样本查询: 本地主机:8983 / solr / test / select?defType = edismax&fl = text,score&mm = 100%&q = A B C&qf = text

响应: { “ text”:“ A C B”, “分数”:16.770645}, { “ text”:“ A B C”, “分数”:16.770645}, { “ text”:“ A C B”, “分数”:16.770645}, }

1 个答案:

答案 0 :(得分:1)

The pf2 and pf3 parameters to the edismax query parser允许您增强术语以彼此顺序出现的文档。那应该可以满足您的需求。

否则,请考虑对Complex Phrase Query Parser使用增强查询bq

bq={!complexphrase inOrder=true}text:"A B C"