Doubt with $elemMatch

Why does this return results. Usually in find whatever conditions we provide they are and’ed and applied on db. But this query doesn’t work this way.

db.movieDetails.find({“boxOffice.country”: “Germany”, “boxOffice.revenue”: {$gt: 17}})

I am confused

There is so many reasons why it can happen that we cannot really help without more information. Some of the reasons are
1.you are connected to the wrong cluster
2.you did not selected the appropriate db with use DatabaseName
3.the name of the collection is wrong
4.there is typos in the name of the fields you specified
5.there is not document matching the criteria

I think you might be referring to the use of an explicit $and[] vs implicit AND which uses a comma.

Refer to the documentation for the $and query operator