0

我在 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]);

这里 community[1]=1 和 community[0]=2

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

范围对我不起作用,因为我也可以同时查找 ID 1 和 3

4

1 回答 1

0

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

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

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

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

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

我希望这可行,我不知道日光浴室,但从上面的 solr 查询中你可以猜测一下。

于 2016-11-05T18:48:54.937 回答