數組操作精細工作:
db.document.insert({'_id':99999})
db.document.update({'_id':99999},{$push:{'student':{'name':'Jack','marks':90}}})
db.document.update({'_id':99999},{$push:{'student':{'name':'Jill','marks':75}}})
現在
db.document.findOne({_id: 99999})
會給你
{
"_id" : 99999,
"student" : [
{
"name" : "Jack",
"marks" : 90
},
{
"name" : "Jill",
"marks" : 75
}
]
}
上$push
錯誤意味着你已經在你的文檔中的字段,它不是數組。
例如,下面的代碼會給你一個錯誤的$push
db.document.insert({'_id':99998,'student':{'name':'Jack','marks':90}})
db.document.update({'_id':99998},{$push:{'student':{'name':'Jill','marks':75}}})
和下面的代碼不會
db.document.insert({'_id':99997,'student':[{'name':'Jack','marks':90}]})
db.document.update({'_id':99997},{$push:{'student':{'name':'Jill','marks':75}}})
真棒。謝謝。感謝快速回復。 – user2629996