Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Solr中的同一筛选器上筛选两个不同日期_Solr_Lucene - Fatal编程技术网

在Solr中的同一筛选器上筛选两个不同日期

在Solr中的同一筛选器上筛选两个不同日期,solr,lucene,Solr,Lucene,在Solr中,如果您有一个索引数据段,并且在该数据中有一组日期值,那么如何查询索引并请求X和Y日期之间的事件 例如,如果我有一个活动场地列表,每个场地都有几十个活动(单日、全天或多日),您将如何构造筛选器以返回在搜索中指定的开始日期和结束日期之间的活动场地 现在,如果我搜索表单并将其提交给Solr,查询字符串如下所示: &fq=dm_event_start_date\:value:["2013-01-04T05:00:00Z" TO *] &fq=dm_event_end_dat

在Solr中,如果您有一个索引数据段,并且在该数据中有一组日期值,那么如何查询索引并请求X和Y日期之间的事件

例如,如果我有一个活动场地列表,每个场地都有几十个活动(单日、全天或多日),您将如何构造筛选器以返回在搜索中指定的开始日期和结束日期之间的活动场地

现在,如果我搜索表单并将其提交给Solr,查询字符串如下所示:

&fq=dm_event_start_date\:value:["2013-01-04T05:00:00Z" TO *]
&fq=dm_event_end_date\:value:[* TO "2013-01-08T05:00:00Z"]
&fq=bm_tickets_left\:value:"TRUE"
我真正想要的是发生在或开始于1月4日的事件,不会持续到1月8日之后,并且仍然有剩余的门票


我觉得我得到的回报是任何介于这两个日期之间的事件,或者有票可用-不一定与日期匹配。

可能日期字段值需要超出范围查询中的报价,例如:-

&fq=dm_event_start_date:value:[2013-01-04T05:00:00Z TO *]
&fq=dm_event_end_date:value:[* TO 2013-01-08T05:00:00Z]
&fq=bm_tickets_left:value:true

另外,
bm\u tickets\u left
需要的只是字符串值。

这似乎是一个类似的问题:-如果您在一个mysql记录中存储一个日期(从开始到结束),并且它在Solr中被索引为两个字段,那么在查询时如何确保它们是连接的?