programing

pymono : 우아하게 레코드를 삭제합니다.

oldcodes 2023. 7. 3. 23:09
반응형

pymono : 우아하게 레코드를 삭제합니다.

여기 피몽고를 사용하여 레코드를 여러 개 삭제하는 코드가 있습니다.

ids = []
with MongoClient(MONGODB_HOST) as connection:
    db = connection[MONGODB_NAME]
    collection = db[MONGODN_COLLECTION]
    for obj in collection.find({"date": {"$gt": "2012-12-15"}}):
        ids.append(obj["_id"])
    for id in ids:
        print id
        collection.remove({"_id":ObjectId(id)})

이 기록들을 삭제하는 더 좋은 방법이 있습니까?모든 기록을 직접 삭제하는 것처럼.

collection.find({"date": {"$gt": "2012-12-15"}}).delete() or remove()

또는 obj like에서 삭제

 obj.delete() or obj.remove()

아니면 비슷한 것?

다음을 사용할 수 있습니다.

collection.remove({"date": {"$gt": "2012-12-15"}})

현재로는collection.remove(filter)더 이상 사용되지 . 지되않음, 사용을 사용하십시오.collection.delete_many(filter).

예:collection.delete_many({"author": ObjectId("...")})

언급URL : https://stackoverflow.com/questions/13960959/pymongo-delete-records-elegantly

반응형