-1

我有一个 solr 查询,例如:host:8983/solr/collection/select?q=propids%3A1&wt=json&indent=true where i filter about propids: 1. 问题是当过滤 propids:1 和 2 时,我只有用 propids:1 索引的文档,但是当我使用 with 和时,我得到所有索引的结果,即使我没有任何拥有 2 的道具。感谢您的帮助。谢谢

4

3 回答 3

1

所有包含 propids = 1 的结果

host:8983/solr/collection/select?q=*:*&wt=json&indent=true&fq=propids:1

所有包含 propids = 2 的结果

host:8983/solr/collection/select?q=*:*&wt=json&indent=true&fq=propids:2

所有包含 propids = 1 或 propids = 2 的结果

host:8983/solr/collection/select?q=*:*&wt=json&indent=true&fq=propids:(1 OR 2)

所有同时包含 propids = 1 和 propids = 2 的结果

host:8983/solr/collection/select?q=*:*&wt=json&indent=true&fq=propids:1&fq=propids:2
于 2014-01-18T00:23:49.460 回答
0

我猜你的查询部分是

q=propids:1 和 2

这并不意味着它会搜索 propids=1 和 2。

请检查您的solrconfig.xml以获取默认搜索字段。因为如果您的查询就像我提到的那样,那么这意味着

q=propids:1 和 default_searchable_field:2

于 2014-01-08T14:05:26.423 回答
0

如果您需要获取 propids=1 的文档以及 propids=2 的文档,请执行此操作。

q=propids:1 2

这将匹配两个单词(1 和 2)与字段的内容并获得两种类型的文档。

于 2014-01-09T04:20:59.193 回答