-
Type: Improvement
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: Aggregation Framework
-
Fully Compatible
-
Query 2020-12-14, Query 2020-12-28, Query 2021-01-11
-
(copied to CRM)
This proposes closing SERVER-29376 and instead allowing combination of both, localField and foreignField and expressive pipeline.
{$lookup:{from:"other", localField:"l", foreignField:"f", as:"fromOther" [, pipeline: [ ... ] ] /* optionally add a pipeline to apply *after* equality join */
This allows preserving the non-expressive lookup equality semantics with additional flexibility of using anything along with it like $sort and $limit etc.
- is related to
-
SERVER-29376 Rewrite $lookup localField/foreignField stages to execute with pipeline/let
- Closed
-
SERVER-40362 expressive $lookup "let" with missing field cannot be optimized
- Backlog
-
SERVER-41171 MongoDB $lookup using "$expr" is slow compared to simple $lookup
- Backlog
- related to
-
SERVER-49953 allow $expr as RHS expression in regular match expressions
- Closed
-
SERVER-45326 Poor Aggregation Framework performance in relational queries
- Closed