Php 弹性搜索中的过滤?
我使用date_histogram api来获得使用时间间隔(小时/天/周或月)的实际计数。此外,我还有一个功能在实现上遇到了困难,用户可以通过输入startDate和endDate(文本框)来过滤结果,这将使用字段时间戳进行查询。因此,在使用date_histogram api或任何api时,如何通过只查询一个字段(即时间戳)来过滤结果,以便实现我想要的结果 在SQL中,我将只使用一个between运算符来获得结果,但从我目前所读到的内容来看,在弹性搜索中,它们没有between运算符(不确定) 到目前为止,我有以下脚本:Php 弹性搜索中的过滤?,php,
elasticsearch,Php,
elasticsearch,我使用date_histogram api来获得使用时间间隔(小时/天/周或月)的实际计数。此外,我还有一个功能在实现上遇到了困难,用户可以通过输入startDate和endDate(文本框)来过滤结果,这将使用字段时间戳进行查询。因此,在使用date_histogram api或任何api时,如何通过只查询一个字段(即时间戳)来过滤结果,以便实现我想要的结果 在SQL中,我将只使用一个between运算符来获得结果,但从我目前所读到的内容来看,在弹性搜索中,它们没有between运算符(不确定
curl 'http://anotherdomain.com:9200/myindex/_search?pretty=true' -d '{
"query" : {
"filtered" : {
"filter" : {
"exists" : {
"field" : "adid"
}
},
"query" : {
"query_string" : {
"fields" : [
"adid", "imp"
],
"query" : "525826 AND true"
}
}
}
},
"facets" : {
"histo1":{
"date_histogram":{
"field":"timestamp",
"interval":"day"
}
}
}
}'
在elasticsearch中,您可以使用过滤器查询来实现这一点。举个例子就可以了