2015-01-21 78 views
2

在json文档中,我们有开始日期和结束日期。在cloudant lucene中搜索日期范围内的筛选?

对于例如:{“开始日期”:“2014年12月5日”,“结束日期”:“2015年3月15日”}

我要检索的范围之间存在的记录开始日期和结束日期。如何在cloudant lucene搜索中实现上述scenerio?

请帮助我。

回答

1

这里是一个快速的答案,我没有测试过...

如果存储日期为整数:

20141205 
20150315 

你应该能够对这些值执行范围查询。下面是来自在线文档片段:

您还可以在数字方面使用 范围=参数进行小范围查询。例如;

?q=*:*&ranges={"price":{"cheap":"[0 TO 100]","expensive":"{100 TO Infinity}"}} 

来源:https://cloudant.com/for-developers/search/

UPDATE:

范围搜索应​​该还是工作,即使你保持原来的日期格式(YYYY-MM-DD)。

+1

休息和关键字的日期字段不只是这回的这些范围,而不是实际的文件中的文档计数: “返回适合每个sp的结果数ecified category“:https://docs.cloudant.com/search.html#faceting – Maarten 2015-09-20 10:20:16

+2

此外:'范围操作只有在索引值是数字时才起作用。 – Maarten 2015-09-20 10:21:28

2

如果没有存储日期为整数,这应该是理想的情况下,这里是你应该怎么做在cloudant

1)编辑使用关键字分析器搜索索引,然后你可以通过日期也

?q=field_name:["2015-08-17" TO "2015-08-18"] 

我个人使用多个分析仪,标准等领域的cloudant

+0

谢谢!这非常有用 – 2016-06-20 20:39:24