使用Solr 8.0.0,每个文档都包含一个开始时间戳记字段和一个结束时间戳记字段,我将如何以仅返回这些日期之间的持续时间的方式进行查询?所以我将要寻找这样的方程式:
(结束时间-开始时间)-500秒=预期持续时间超过23秒。
但是要获得集合中所有文档的结果。
这将成为流式表达的主题吗?您可以提供任何示例代码吗?我特别想将此计算负载保持在SolrCloud中。
答案 0 :(得分:1)
您可以use a function query。 ms
function为您提供两个日期之间的毫秒差。您可以从该号码use sub
to subtract 500 seconds开始。
您可以使用the frange
query parser来过滤与给定范围匹配的文档。这意味着我们最终会遇到以下情况:
q={!frange l=0}sub(ms(endtime,starttime),500000)