【发布时间】:2017-10-09 14:05:56
【问题描述】:
你们中的任何人都可以为以下问题提出一些解决方案吗?
solr.if 查询的正确格式是什么? 我想检查一个特定的字段值是否大于一个常数 例如: 如果((字段 1 > 0),字段 1,字段 2) 这在 solr 中可能吗? 我们也可以对日期字段做同样的事情。通过比较两个日期?
【问题讨论】:
你们中的任何人都可以为以下问题提出一些解决方案吗?
solr.if 查询的正确格式是什么? 我想检查一个特定的字段值是否大于一个常数 例如: 如果((字段 1 > 0),字段 1,字段 2) 这在 solr 中可能吗? 我们也可以对日期字段做同样的事情。通过比较两个日期?
【问题讨论】:
Solr(和一般的 Lucene)是基于文档的。 这意味着信息单元是单个文档(由一组字段组成)。 您搜索并返回文件。 要搜索字段值小于常量的文档,您可以使用范围查询[1]:
field1:[* TO 500] 这相当于“将 field1 的值小于 500 的所有文档返回给我。 日期也可以这样做。
鉴于此,我没有得到您请求的“条件”部分,但 Solr 提供了一个可能有用的条件函数查询[2]
[2]https://lucene.apache.org/solr/guide/6_6/function-queries.html#FunctionQueries-AvailableFunctions
【讨论】: