MongoDB教學
MongoDB快速入門
MongoDB歷史
MongoDB特點
MongoDB數據庫的優點
MongoDB安裝配置(Windows)
MongoDB安裝配置(Ubuntu)
MongoDB安裝配置(RedHat/CentOS)
MongoDB數據建模
MongoDB創建數據庫
MongoDB刪除數據庫
MongoDB創建集合
MongoDB刪除集合
MongoDB數據類型
MongoDB插入文檔
MongoDB查詢文檔
MongoDB更新文檔
MongoDB刪除文檔
MongoDB投影(選擇字段)
MongoDB限制記錄數
MongoDB排序記錄
MongoDB索引
MongoDB聚合
MongoDB複製
MongoDB分片
MongoDB備份與恢復
MongoDB部署
Java連接MongoDB操作
Python連接MongoDB操作
PHP連接MongoDB操作
Ruby連接MongoDB操作
MongoDB更新文檔
MongoDB的update()
和save()
方法用於將集合中的文檔更新。update()
方法更新現有文檔中的值,而save()
方法使用save()
方法中傳遞的文檔數據替換現有文檔。
MongoDB Update()方法
update()
方法更新現有文檔中的值。
語法
update()
方法的基本語法如下 -
> db.COLLECTION_NAME.update(SELECTION_CRITERIA, UPDATED_DATA)
示例
考慮mycol
集合具有以下數據 -
> db.mycol.find({}, {'_id':1, 'title':1})
{ "_id" : 100, "title" : "MongoDB Overview" }
{ "_id" : 101, "title" : "MongoDB Guide" }
{ "_id" : 102, "title" : "NoSQL Database" }
{ "_id" : 104, "title" : "Python Quick Guide" }
>
以下示例將爲標題爲「MongoDB Overview
」的文檔設置爲「New Update MongoDB Overview
」。
> db.mycol.find({'title':'MongoDB Overview'},{'_id':1, 'title':1})
{ "_id" : 100, "title" : "MongoDB Overview" }
> # 更新操作
> db.mycol.update({'title':'MongoDB Overview'},{$set:{'title':'New Update MongoDB Overview'}})
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> # 查詢更新後的結果 -
> db.mycol.find({'_id':100},{'_id':1, 'title':1})
{ "_id" : 100, "title" : "New Update MongoDB Overview" }
>
默認情況下,MongoDB只會更新一個文檔。要更新多個文檔,需要將參數’multi
‘設置爲true
。
>db.mycol.update({'title':'MongoDB Overview'},
{$set:{'title':'New Update MongoDB Overview'}},{multi:true})
MongoDB Save()方法
save()
方法使用save()
方法中傳遞的文檔數據替換現有文檔。
語法
MongoDB save()
方法的基本語法如下所示:
>db.COLLECTION_NAME.save({_id:ObjectId(),NEW_DATA})
以下示例將_id
爲 100
的文檔使用新的文檔替換。
db.mycol.save(
{
"_id" : 100, "title":"Update By Save()Method.", "by":"yiibai.com"
}
)
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
db.mycol.find({'_id':100}, {'_id':1, 'title':1})
{ "_id" : 100, "title" : "Update By Save()Method." }