2016-12-03 28 views
0

請注意,以下示例是現實生活用例的縮小版,它使得問題易於閱讀和製作點。ElasticSearch:在命中= 0時返回響應正文中的查詢

我有以下文件結構:基於不同的值(「IDC」和「日期」的範圍)

{ 
    "date" : 1400500, 
    "idc" : 1001, 
    "name": "somebody", 
} 

我執行_msearch查詢(一次多個searchs)
當ES無法找到指定日期範圍內的任何文件,它返回:

"hits":{ 
    "total":0, 
    "max_score":null, 
    "hits":[ 
    ] 
} 

但是,因爲有N個結果,我不能告訴「IDC」,什麼「日期」範圍是這樣的結果對。
我希望響應具有「搜索」日期範圍和「idc」,當給定查詢沒有結果時。
例如,如果我尋找IDC = 1001的文檔和1400100和1400200之間的日期,但目前還沒有結果發現,響應應該在響應主體的查詢詞,像這樣:

"hits":{ 
    "total":0, 
    "max_score":null, 
    "query": { 
      "date": { 
       "gt": 1400100, 
       "lte": 1400200, 
      } 
      "idc": 1001, 
     } 
} 

這樣我可以知道日期範圍和「IDC」組合沒有結果。
請注意,上面的例子是一個真實生活用例的縮小版本,它的問題是易於閱讀和表達觀點。

回答