Instead of indexing a document which does not contain all the fields you need, you can modify your document before indexing it to add the missing fields.
You can use a script processor (look for Ingest script processor in documentation).
This will be then much faster but also will give you much more flexibility to do your queries.