我有一个类似下面的JSON文档。我想从数组中删除匹配元素。
{
"_id" : NumberInt(1),
"fruits" : [
"pears",
"bananas"
],
"vegetables" : [
"carrots",
"celery",
"squash",
"carrots"
],
"ids" : [
NumberLong(2825459592),
NumberLong(328257222163),
NumberLong(825544354),
NumberLong(3282580412308),
NumberLong(28254518083),
NumberLong(32825684682),
NumberLong(3282574078116),
NumberLong(32825709226),
NumberLong(328255745773)
]
}
从String数组中,以下更新有效。
db.test.update(
{},
{ $pull: { fruits: { $in: [ "pears" ] }} },
{ multi: true }
)
从Number数组,以下更新不起作用。没有错误,也没有删除。
db.test.update(
{},
{ $pull: { ids: { $in: [ 28254518083 ] }} },
{ multi: true }
)
我使用MongoChef的IntelliShell来执行上述命令。