在一个ObjectIds数组而不仅仅是一个ObjectId的字段上执行$ lookup的语法是什么?
示例订单文档:
{
_id: ObjectId("..."),
products: [
ObjectId("..<Car ObjectId>.."),
ObjectId("..<Bike ObjectId>..")
]
}
Run Code Online (Sandbox Code Playgroud)
不工作查询:
db.orders.aggregate([
{
$lookup:
{
from: "products",
localField: "products",
foreignField: "_id",
as: "productObjects"
}
}
])
Run Code Online (Sandbox Code Playgroud)
期望的结果
{
_id: ObjectId("..."),
products: [
ObjectId("..<Car ObjectId>.."),
ObjectId("..<Bike ObjectId>..")
],
productObjects: [
{<Car Object>},
{<Bike Object>}
],
}
Run Code Online (Sandbox Code Playgroud)