0

我正在使用 Solr 6。我有一个特定 ID 的数据流(日期范围)。我只想查看其中的空白(日期)。示例:这是我所拥有的

{"start":"2016-04-20",
"end":"2016-04-21",      
"file_id":"538b3274"},
{
"start":"2016-04-24",
"end":"2016-04-25",
"file_id":"538b3274"},
{
"start":"2016-04-25",      
"end":"2016-04-26",
"file_id":"538b3274"},
{
"start":"2016-04-29",       
"end":"2016-04-30",
}

这是我想看到的。例子:

{
missing: [2016-04-22 TO 2016-04-25]         
"file_id":"538b3274"},
{
missing: [2016-04-27 TO 2016-04-28]       
"file_id":"538b3274"},    
}

响应也可以是一个具有多个日期的条目

<pre>{
missing: [2016-04-22 TO 2016-04-23], [2016-04-27 TO 2016-04-28]       
"file_id":"538b3274"},    
}</pre>
4

1 回答 1

1

你不会从 Solr 中获得这个功能。我看到几个选项:

  1. 只需在客户端执行此操作。可能是最简单和最简单的。

  2. 您可以编写一个自定义QueryResponseWriter以您需要的方式返回文档。但是,我不确定这是否可行,因为您不想以不同的方式格式化您的文档,您需要从 Solr 返回的文档中创建新文档。你将不得不尝试。

  3. 您也可以尝试Streaming Expressions,也可以在那里插入您的自定义 java 代码。

    但我认为 2 和 3 的工作量比 1 多得多。

于 2017-01-27T09:16:30.623 回答