Du kan gøre dette ved at bruge .aggregate()
metoden og $redact
operatør. I din $cond
udtryk du skal bruge for at bruge $setIsSubset
for at kontrollere, om alle elementerne i "products"-arrayet er i "productIds". Dette er fordi du ikke kan bruge $in
i det betingede udtryk
var productIds = [139,72,73,1,6];
db.customers.aggregate([
{ "$redact": {
"$cond": [
{ "$setIsSubset": [ "$products", productIds ] },
"$$KEEP",
"$$PRUNE"
]
}}
])