Elastic search complex query

Have a look at the approach recommended in this thread. Elasticsearch does not support joins so this is generally does by enriching at index time rather than joining at query time.