$pull:
db.collection.update(
<query>,
{
$pull: {
<arrayField>: <query2>
}
}
)
$pullAll:
db.collection.update(
<query>,
{
$pullAll: {
<arrayField>: [ <value1>, <value2> ... ]
}
}
)
$push:
db.collection.update(
<query>,
{
$push: {
<field>: <value>
}
}
)
将 value 压入 field 中。若是 value
本身也是数组,那么是将整个数组当做一个元素压入。不去重
$pushAll:
db.collection.update(
{
field: value
},
{
$pushAll:
{
field1: [ value1, value2, value3 ]
}
}
);
若压入的 value 是单个值将会报错,必须是一个 array,不去重
当 value 为一个 array 的时候,将 value
里面的值分别增加到 field 中。而不是当做一个总体
$each 配合 $addToSet :
仅仅将不存于数组 field 中的多值增加到field中。去重
db.COLLECTION.update(
<query>,
{
$addToSet: {
<field>: {
$each: [ <value1>, <value2> ... ]
}
}
}
)
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcGFuZG9yYV9tYWRhcmE=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
$each 配合 $push:
将多值压入数组 field 中,不去重
db.COLLECTION.update(
<query>,
{
$push: {
<field>: {
$each: [ <value1>, <value2> ... ]
}
}
}
)