Похоже, что ваш запрос пытается сопоставить документы, в которых встроенный массив History.user_id
содержит указанное значение c, а поле date
больше поля History.date
. Вам не нужно $cond'/
$, если for that, you can use
$ и `
db.main.aggregate([
{$lookup: {
from: "history",
localField: "history_id",
foreignField: "_id",
as: "History"
}},
{$unwind: "$History"},
{"$match": {
$expr: {
$and: [
{$in: [
"5e4a8d2d3952132a08ae5763",
"$History.user_id"
]},
{$gt: [
"$date",
"$History.date"
]}
]
}
}
}
])