Disons que j'ai indexé un objet qui ressemble à:Nested requête ElasticSearch en Java
{
firstName: "Ben"
lastName: "McCann"
urls: [{ canonical: "http://www.benmccann.com" }]
emails: [{ canonical: "[email protected]" }]
}
Comment puis-je créer ensuite une recherche pour « Ben » ou « McCann » ou « [email protected] "?
SearchRequest request = new SearchRequest(INDEX)
.source(new SearchSourceBuilder().query(QueryBuilders.boolQuery()
.should(QueryBuilders.matchQuery("firstName", "Ben"))
.should(QueryBuilders.matchQuery("lastName", "McCann"))
.should(QueryBuilders.nestedQuery("emails", QueryBuilders.matchQuery("emails.canonical", "[email protected]")))));