Solr更改查询结果

时间:2019-10-24 08:39:46

标签: solr

我的管理模式下还有下一个污物

  <field name="title" type="string" indexed="true" stored="true"/>  
  <field name="body" type="text_general" indexed="true" stored="true"/>
  <field name="url" type="string" uninvertible="true" indexed="true" stored="true"/>

我还将edismax与带有可选boost(qf = body ^ 2 title ^ 100)选项的查询字段一起使用。

我有许多来自不同域的网址,例如:

http://domain1.com/
http://domain1.com/aaa
http://domain1.com/aaa/bbb
http://domain1.com/aaa/bbb2
http://domain1.com/aaa/bbb3
http://domain2.com/
http://domain2.com/aaa
http://domain2.com/aaa/bbb
http://domain2.com/aaa/bbb2
http://domain2.com/aaa/bbb3
http://domain3.com/
http://domain3.com/aaa
http://domain3.com/aaa/bbb
http://domain3.com/aaa/bbb2
http://domain3.com/aaa/bbb3

问题是,当我搜索时,我从一个域中获得许多相似的结果,而下一个域的结果则从30-100 doc开始。如何从顶部的不同域获取结果。

1 个答案:

答案 0 :(得分:0)

您必须将URL的域名分成自己的字段。您不能使用url字段,因为它仅已包含唯一值,并且用于分组的字段也应该是string字段(即,它不会拆分成多个标记)。

然后您可以使用Collapse & Expand support折叠基于域的结果集:

q=...&fq={!collapse field=domain}&expand=true
相关问题