1

假设我的索引有 3 个字段:title、x 和 y。

我知道一个范围(10 < x < 100)可以这样查询:

http://localhost:8983/solr/select?q=x:[10 TO 100]&fl=title

如果我想要两个范围(10 < x <100 AND 20 < y < 300) 查询,例如

SQL(选择标题,其中 x>10 且 x < 100 且 y > 20 且 y < 300)

通过使用 Solr 范围查询或 SolrJ,但我不知道如何实现这一点。还有人知道吗?谢谢

邮箱:enzhaohoo@gmail.com

4

2 回答 2

2

查看 SolrJ 的文档。对 addFilterQuery 的连续调用将继续构建您的查询。或者,您可以在一个 fq 中包含两件事:

http://localhost:8983/solr/select?q=&fq=x:[10+TO+100]+AND+y:[20+TO+300]&fl=title
于 2009-07-08T02:09:55.327 回答
1

SolrQuery 类中有一个方法可以解决你的问题, setFilterQueries(String... fq) 你可以看看这个。

于 2010-11-16T09:17:37.293 回答