我想執行以下查詢。我在文檔 中有3個屬性狀態 - 可以是「失敗」,「通過」,「無效」 DATE - 包含日期和時間。Elasticsearch日期範圍查詢與聚合
我想每個狀態
如每天數數:日期:2016年11月9日,STATUS:FAIL,計數:120
日期:2016年11月9日,STATUS:PASS,數:150
我想去年一個月的數據,二月份和等
SearchRequest requestQuery =
Requests.searchRequest(ConstantsValue.indexName)
.types(ConstantsValue._Type)
.source("{size:999999,"
+ "\"_source\" : "
+ "[\"DTCREATED\", \"STATUS\"]"
+ ",\"aggs\": "
+ "{\"group_by_STATUS\": {\"terms\": {\"field\": \"STATUS\"},"
+ "\"aggs\" : "
+ "{\"group_by_DATE\" : {\"date_histogram\" : "
+ "{\"field\" : \"DTCREATED\", \"interval\" : \"day\","
+ "\"format\" : \"yyyy-MM-dd\" },"
+ "\"aggs\" : "
+ "{\"grades_count\" : { \"value_count\" : { \"field\" : \"STATUS\" } }}}}}}}");
此代碼給我的每個狀態b的每日計數用於所有記錄。並且想要添加如下所示的範圍過濾器。
+"\"query\": {"
+" \"filtered\": {"
+" \"filter\": {"
+ "\"range\": { \"DTCREATED\": { \"gte\": \"now-90d/d\" }}"
+"}}}}}");
但我無法合併這兩個查詢的內容。我盡力了。任何幫助是極大的讚賞。
您需要的是確定日期範圍在您的ES搜索查詢中? – Kulasangar