sql:
db.data.update({"_id":'123'},{$set:{name:[{'host_id':'t1'}]}})
结果:
{
"_id": "123",
"name": [
{
"host": "t1"
}
]
}
我这边的情况这样的:
id是类似主键
如果123存在的话,继续插入数据到name下。
{
"_id": "123",
"name": [
{
"host": "t1"
},
{
"host": "t2"
}
]
}
这个要怎么操作?
方法一:
db.data.update({_id: "123"}, {$addToSet:{name:{ "host": "t0"}}});
方法二:
db.data.update({_id: "123"}, {$push:{name:{ "host": "t0"}}});
两者的区别是
$push 和 $addToSet
前者不会判断数据汇总是否拥有这个值,但后者不会重复添加