簡體   English   中英

Elastic Search 查詢:按數字范圍過濾聚合

[英]Elastic Search query: filter aggregation by number range

我有一個類似的查詢

{
   "query":{
      "bool":{
         "must":[
            {
               "range":{
                  "created_date":{
                     "gte":1801301,
                     "lte":1807061
                  }
               }
            }
         ]
      }
   },
   "aggs":{
      "rating":{
         "filters":{
            "filters":{
               "neutral":{
                  "match":{
                     "rating":0
                  }
               },
               "positive":{
                  "match":{
                     "rating":1
                  }
               },
               "negative":{
                  "match":{
                     "rating":2
                  }
               }
            }
         }
      }
   },
   "size":0

}

查詢按 created_date 過濾文檔。 我使用涵蓋兩個日期范圍的日期范圍:當前和以前。 喜歡這個月和上個月的數據。 這在其他計算中是需要的(原始查詢要大得多)。

此查詢有效,但它計算當前和以前日期范圍的評級。 我需要在較短的日期范圍內計算評分:created_date:1804181-1807061。

有沒有辦法我可以做到這一點?

您可以使用

{
    "range: {
        "created_date": {
            "gte":"now-10d/d",
            "lte":"now/d"
        }
    }
}

我想這會對你有所幫助。 如果您有任何問題,請告訴我

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM