【发布时间】:2012-08-08 00:01:01
【问题描述】:
如何从 Solr 结果集中排除一组文档 ID?本质上类似于
/select?q=tag_id:367 AND NOT id:(306670,302209)
我试过了,它不排除具有这些 id 的文档。
【问题讨论】:
标签: solr
如何从 Solr 结果集中排除一组文档 ID?本质上类似于
/select?q=tag_id:367 AND NOT id:(306670,302209)
我试过了,它不排除具有这些 id 的文档。
【问题讨论】:
标签: solr
试试这个:
/select?q=*:*&fq=tag_id:367 AND id:[* TO *] -id:(306670 302209)
这应该允许您构建添加任意数量的 ID,而不必在每次要消除 ID 时添加 -id:302209。反之亦然,您可以将- 与+ 交换并强制一个值数组也存在。
【讨论】:
q=*:* 格式的建议。您建议的那个仍然没有排除 ID 为 306670 和 302209 的文档。但是这个可以:/select?q=*:*&fq=tag_id:367 AND -id:306670 AND -id:302209 本质上,带括号的分组功能对我不起作用。
AND id:[* TO *] 是不必要的?
/select?q=*:*&fq=+tag_id:367 AND -id:(306670 OR 302209)相同,与/select?q=*:*&fq=+tag_id:367 AND -id:306670 AND -id:302209相同
找到一个解决方案:
/select?q=tag_id:367&fq=-id:306670 AND -id:302209
不确定这是否是最好的方法!
【讨论】:
id。
id 不是默认搜索字段。
/select?q=tag_id:367&fq=-id:(306670 OR 302209)