Powinieneś użyć $not
$in
z $expr
wyrażenie, Ponieważ $nin
jest operatorem zapytania nie dla wyrażenia agregacji,
- jeszcze jedna poprawka, której potrzebujesz, aby utworzyć zmienną za pomocą
let: { following: "$following"}
i użyj wewnątrz potoku$$following
, ponieważ potok wyszukiwania nie pozwoli na dostęp do pól bez odniesienia,
{
$lookup: {
from: "Users",
let: {
following: "$following"
},
pipeline: [
{
$match: {
$expr: {
$not: {
$in: [
"$_id",
"$$following"
]
}
}
}
}
],
as: "result"
}
}
Roboczy plac zabaw:https://mongoplayground.net/p/08OT6NnuYHx