Using nested queries
For queries based on nested objects, there is a special nested query.
This kind of query is required because nested objects are indexed in a special way in Elasticsearch.
Getting ready
You need an up-and-running Elasticsearch installation as we described in the Downloading and installing Elasticsearch recipe in Chapter 2, Downloading and Setup.
To execute curl
via the command line, you need to install curl
for your operating system.
To correctly execute the following commands, you need an index populated with the chapter_07/populate_relations.sh
script, available in the online code.
How to do it...
To execute the nested query, we will perform the following steps:
We want to search the document for nested objects that areÂ
blue
and whose size is greater than10
. The nested query will be as follows:curl -XPOST 'http://127.0.0.1:9200/test-index/test- type/_search?pretty=true' -d '{ "query": { "nested" : { ...