使用具有相同字段的多个值的日光浴在solr中进行分面搜索

时间:2016-11-04 17:49:41

标签: solr solarium

我在solr中索引我的数据以及与之关联的社区相关的id。

例如,这些是我在搜索特定查询时获得的博客,但我想根据社区ID进一步过滤它们: -

Blog1- Community id :1
Blog2- Community id :2
Blog3- Community id :1
Blog4- Community id :3

我想获得社区ID 1和2的博客

我已经尝试了很多这种模式的迭代

$query->createFilterQuery('community')->setQuery('community:'.$community[1].' OR'.'community:'.$community[0]);

这里社区[1] = 1,社区[0] = 2

有没有人知道做这件事的具体格式。我正在使用日光浴与solr进行互动。

范围对我来说不起作用,因为我也可以一起寻找ID 1和3

1 个答案:

答案 0 :(得分:1)

如果我必须编写查询来查找id为1或3的记录,那么我的查询将是

  

q = & fq = community_id:(1 3)& fl = blogs,community_id

&安培;默认情况下,过滤器是OR,所以我在查询中没有提到它。

我不知道日光浴,但你可以尝试:

  

$查询 - > createFilterQuery( '社区') - > setQuery( '社区:('。$社区[1]””。$社区[0] ')');

我希望这个有效,我再也不知道日光浴,但是从上面的solr查询你可以猜测。

相关问题