2014-01-22 189 views
0

如何過濾對象內部數組中的字段?過濾器Elasticsearch

樣品:

{ 
    _index: "consult", 
    _type: "user", 
    _id: "TlgRL71xRyq-0guJTGA9WQ", 
    _score: 1, 
    _source: { 
    token: "1113", 
    userlist: [ 
     { 
     id: "1", 
     nome: "Mark" 
     }, 
     { 
     id: "2", 
     nome: "Joe" 
     } 
    ] 
    } 
} 

回答

0

您可以通過使用一個完全合格的路徑(例如,「點號」)訪問對象的屬性。例如,下面是一個Term過濾器,查找特定的id值:

{ 
    "query": { 
     "filtered": { 
      "filter": { 
       "term": { 
        "userlist.id": 1 
       } 
      } 
     } 
    } 
}