2017-10-18 63 views
0

可以說我有一個 elasticsearch條目與兩個日期字段-t0和t1。 可以說,那些t0和t1是「2017-10-18T09:00:00」和「2017-10-18T12:00:00」 - 與在同一日期中不同的小時(爲了簡單起見)ElasticSearch - 單擊成多個桶

I想要執行一個聚合查詢,該查詢會在每個小時內給我一個桶命中 - 因爲每小時範圍是09:00-12:00,我想要得到3個桶 - 範圍內每小時一個桶,在每一箇中都有一個 - 例如: 如果說的是09:00-12:00的相同範圍,那麼我想要在下面的桶中計入相同的條目: 09:00-10:00 10 :00-11:00 11:00-12:00

這甚至有可能嗎?

在此先感謝!

回答

0

我插入4號文件的日期爲:: 9:00,10:00,11:00,11:30

{ 
"size": 0, 
"aggs" : { 
    "buckets" : { 
     "date_histogram" : { 
      "field" : "date", 
      "interval" : "1h", 
      "format" : "HH:mm" 
     } 
    } 
} 
} 

如下這將返回一個結果。

"aggregations": { 
    "buckets": { 
    "buckets": [ 
     { 
      "key_as_string": "09:00", 
      "key": 1508317200000, 
      "doc_count": 1 
     }, 
     { 
      "key_as_string": "10:00", 
      "key": 1508320800000, 
      "doc_count": 1 
     }, 
     { 
      "key_as_string": "11:00", 
      "key": 1508324400000, 
      "doc_count": 2 
     } 
    ] 
    } 
    } 

我想這是你需要的。

+0

嘿交換。替代'4'文件,'1'文件有2個日期字段 - 先09:00,秒11:30 - 但結果桶應該是相同的 – ojamui

+0

我認爲它不可能。 – swap0129