Měli byste použít $not
$in
s $expr
výraz, protože $nin
je operátor dotazu, který není určen pro výraz agregace,
- ještě jednu opravu, kterou potřebujete k vytvoření proměnné pomocí
let: { following: "$following"}
a použijte uvnitř kanálu$$following
, protože vyhledávací kanál neumožní přístup k polím bez reference,
{
$lookup: {
from: "Users",
let: {
following: "$following"
},
pipeline: [
{
$match: {
$expr: {
$not: {
$in: [
"$_id",
"$$following"
]
}
}
}
}
],
as: "result"
}
}
Pracovní hřiště:https://mongoplayground.net/p/08OT6NnuYHx