$pullAll
演算子は実際には「特殊なケース」のショートカットであり、別のケースなど、値だけが含まれる配列で機能します。
本当に必要なのは、 $pull
>
その引数は、配列に含まれるドキュメントの「クエリ」です。したがって、リストは $in
:
db.bios.update(
{ "name.first": "James" },
{
"$pull": {
"awards": { "by": { "$in": ["Stockholm", "Hollywood"] } }
}
}
)
したがって、他の例では、より長い形式の$pullAll
次のようになります:
db.bios.update(
{ "name.first": "James" },
{
"$pull": { "contribs": { "$in": ["Java","UNIX"] } }
}
)
同じことですが、「ロングハンド」形式だけです。