I have seen this and other similar titled questions, none answer my question.
I was going through the mongoose documentation where I read
MongoDB has the join-like $lookup aggregation operator in versions >= 3.2. Mongoose has a more powerful alternative called populate(), which lets you reference documents in other collections.
How does populate() in mongoose work that makes it more powerful than MongoDB's $lookup?
Isn't mongoose a tool that helps nodejs users work with mongodb. If so how can mongoose have functionalities that MongoDB does not? Like populate()?
Does mongoose's populate() method use MongoDB's $lookup behind the scenes?
populate()method does not use MongoDB's$lookupbehind the scenes. And I have understood that the populate method does several trips to the DB to populate. I have also seen that in getting an array of docspopulate()is faster. But why do people wantpopulate()to use$lookup? - YulePale.populate()syntax over$aggregation. If you needs$lookupperformance, then you must use$aggregationat this moment. Also it would be better if mongoose use what's available in mongodb instead of doing it's own "framework" function. - Orelsanpls