java - 如何编写一个 solr 查询来检索数字字段值小于指定值的所有记录?

标签 java syntax solr lucene solrj

假设我们有一组带有名称和价格的 mp3 播放器。

如何编写正确的 solr 查询以查找具有特定名称且价格低于 100 美元的所有商品?

q = "(name:(ipod) AND price ????? 100.0)"

最佳答案

我认为查询解析器不支持 <运算符(operator)。你必须定义一个 RangeQuery明确地。然后,您可以使用 BooleanQuery 将名称查询附加到该查询.

更新:显然,我错了。事实上,Solr 的查询解析器比 Lucene 的更智能。这是您的答案:https://lucene.apache.org/solr/guide/8_0/the-standard-query-parser.html#differences-between-lucene-s-classic-query-parser-and-solr-s-standard-query-parser

field:[* TO 100] finds all field values less than or equal to 100

关于java - 如何编写一个 solr 查询来检索数字字段值小于指定值的所有记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8678867/

相关文章:

java - 如何使用JSP/Servlet将文件上传到服务器?

java - 创建桌面快捷方式

c# - 如何使用 LINQ 从 DateTime 对象数组中提取最常见的 YEAR

ruby-on-rails - Solr 对比。 Ruby 项目中的 Sphinx

Solr如何在太多原子更新后提高查询速度

java - 获取链表中以特定字符开头的所有元素

java - 在Windows服务器上运行jetty+solr

用于将资源包含为 xml 元素而不是属性的 WPF XAML 语法

c - 在 C 中带有参数的 free() 语法

search - 是否可以在typo3 solr 搜索结果中向非登录用户显示访问限制页面?