MongoDB数据不存在时插入,已存在时更新
天蓬老师
天蓬老师 2017-04-21 11:15:38
0
3
629

如题,我现在实现的方法是用语句来查询:

result = db.collection.find_one(xxxx)
if result:
    更新数据
else:
    插入数据

但是,这种方法效率太低了,不知道有没有更好的方法?

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回覆(3)
小葫芦

MongoDB中引入了一種稱為upsert的特殊更新,如果沒有文檔符合更新條件,就會以這個條件和更新文檔為基礎創建一個新的文檔;如果找到了匹配文檔,則正常更新。

詳見MongoDB的文件。

刘奇

upsert:
db.collection.update(xx, xx,true)
第三個參數設為true即可

刘奇

不知道有沒有對mongodb的find_one測試過, 在億級(已測試)資料查詢時沒問題.

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板