日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

mongodb更新数据,查找相同的id,有重复的,就更新。

發布時間:2025/4/5 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mongodb更新数据,查找相同的id,有重复的,就更新。 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近在用mongodb保存一些爬蟲的數據。遇到問題就是,需要把那些重復的數據更新,這個網站是滾動的,以前爬到的數據,同一個頁面,可能現在有人回復了,頁面的內容頁就變了。向把以前保存過的數據再更新一下。不再重復保存。當然重復保存也可以,后期需要刪除重復的數據。最好還是更新。

使用mongodb 的update_one命令可以實現這種功能。

比如:

import pymongo client = pymongo.MongoClient() db = client.db collection = db.collectiondata1 = {"tid":1, "name":"jeck", "post":"right", "reply":"null"} data2 = {"tid":2, "name":"lucy", "post":"west", "reply":"yes"} data11 = {"tid":1, "name":"jeck_nuan", "post":"wrong", "reply":"unsat"} data22 = {"tid":2, "name":"lucy_johon", "post":"south", "reply":"sat"}collection.insert_many([data1, data2]) list(collection.find())collection.update_one({"tid":1}, {"$set":data11}, upsert=True) list(collection.find()) collection.update_one({"tid":2}, {"$set":data22}, upsert=True).modified_countres =collection.update_one({"tid":1}, {"$set":data11}, upsert=True) res.modified_count res = collection.update_one({"tid":2}, {"$set":data22}, upsert = True) res.modified_count

update_one里的兩個參數 都要用大括號,第一個大括號是表示query,查詢是否有符合條件的記錄。比如查詢 tid 是1的記錄。第二個大括號表示更新數據,可以更新單個鍵值,但是我選擇更新整個記錄。需要把整個記錄傳給 set。這樣就可以得到需要的結果了。modified_count顯示是否完成了更新。

總結

以上是生活随笔為你收集整理的mongodb更新数据,查找相同的id,有重复的,就更新。的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。