I am trying to figure if/how it is possible to craft a specific query using nested objects:
For example, given a simple author with nested books mapping: { "author":{ "properties" : { "name" : { "type" : "string" }, "books" : { "type" : "nested", "properties" : { "title" : { "type" : "string" }, "category" : { "type" : "string", "index" : "not_analyzed" } } } } } } Is it possible to craft queries to answer these kind of questions: 1) - "how many authors wrote books in N specific categories" (ie how many wrote in both "travel" and "nonfiction") 2) - "how many authors wrote books in exactly N different categories" (ie how many wrote in 2 different categorites whichever they are) 3) - "how many authors wrote books in N or more different categories" and more generally: 4) - "what is the distribution of authors that wrote books in only 1 category, in exacly 2 different categories, ..., N different categories" Given a query for 2) we could express 4) programmatically by iterating for 1, 2, ..., N For 1) this is working for me: { "query" : { "filtered" : { "query" : { "match_all": {} }, "filter" : { "and" : [ { "nested" : { "path" : "books", "query" : { "filtered" : { "filter" : { "term" : { "books.category" : "travel" } } } } } }, { "nested" : { "path" : "books", "query" : { "filtered" : { "filter" : { "term" : { "books.category" : "nonfiction" } } } } } } ] } } } } Any ideas on how we could approach this for 2) 3) and 4) ? Thanks, Colin -- You received this message because you are subscribed to the Google Groups "elasticsearch" group. To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/3fba046c-98b4-4b46-9232-7058fd7ce6c8%40googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.