2016-09-21 50 views
0

>初學者在這裏。禁用點擊並使用專有inner_hits

我已經爲我的個人資料製作了架構 - 照片的應用程序。在這個應用程序中,用戶可以通過成員的屬性和照片的屬性來搜索成員。並且返回的只是與查詢匹配的照片。

問題是,一個用戶可能有數千張照片,每次搜索都會運行它的返回命中:配置文件的全部對象(帶有嵌套的照片)。

我該如何讓elasticsearch只返回inner_hits的值?

這裏是我的查詢:

{ 
    "query": { 
    "bool": { 
     "must": [ 
     { 
      "nested": { 
      "path": "photo", 
      "query": { 
       "bool": { 
       "must": [ 
        { 
        "match": { 
         "photo.make": "BMW" 
        } 
        }, 
        { 
        "match": { 
         "photo.model": "111" 
        } 
        } 
       ] 
       } 
      }, 
      "inner_hits" : {"size": 1} 
      } 
     } 
     ] 
}}} 

回答

0

重複的:Elasticsearch: Return only nested inner_hits

報價: 應該能夠通過指定「_source」禁止在頂級源場來實現它:假

POST /networkcollection/branch_routers/_search/ 
{ 
    "_source" : false, 
    "query": { 
    "nested": { 
     "path": "queries", 
     "query": { 
     "bool": { 
      "must": [ 
      { "match": 
       { "queries.dateQuery": "20160101T200000.000Z" } 
      } 
      ] 
     } 
     }, 
     "inner_hits" : {} 
    } 
    } 
}