开发者

MongoDB: How to execute a query to result of another query (nested queries)?

I need to apply a set of filters (queries) to a collection. By default, the MongoDB applies AND operator to all queries submitted to find function. Instead of whole AND I need to apply each query sequentially (one by one). That is, I need to run the first-query and get a set of documents, run the second-query to result of first-query, and so on.

Is this Possible?

db.list.find({..q1..}).find({..q2..}).find({..q3..});

Instead Of:

开发者_运维技巧
db.list.find({..q1..}, {..q2..}, {..q3..});

Why do I need this?

Bcoz, the second-query needs to apply an aggregate function to result of first-query, instead of applying the aggregate to whole collection.


Yes this is possible in MongoDB. You can write nested queries as per the requirement.Even in my application I created nested MongoDb queries.If you are familiar with SQL syntax then compare this with in of sql syntax:

     select cname from table where cid in (select .....)

In the same way you can create nested MongoDB queries on different collections also.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜