Powinieneś użyć $expr
jeśli chcesz użyć $setIsSubset
(który jest wyrażeniem) wewnątrz $match
:
db.test.aggregate([
{
$match: {
$expr: {
$setIsSubset: [["hello", "you"], "$words"]}
}
}
])
Dla wersji MongoDB niższych niż 3,6 możesz użyć $redact :
db.test.aggregate([
{
$redact: {
$cond: {
if: { $eq: [ { $setIsSubset: [["hello", "you"], "$words"]}, true ] },
then: "$$KEEP",
else: "$$PRUNE"
}
}
}
])