Python MongoDB find_one_and_replace Query (original) (raw)

Last Updated : 15 Jul, 2025

find_one_and_replace() method search one document if finds then replaces with the given second parameter in MongoDb. find_one_and_replace() method is differ from find_one_and_update() with the help of filter it replace the document rather than update the existing document.

Syntax:

find_one_and_replace(filter, replacement, projection=None, sort=None, return_document=ReturnDocument.BEFORE, session=None, **kwargs)

Parameters
filter: A query for replacement of a matched document.

Sample database used in all the below examples:

Example 1:

Python3 `

import pymongo

establishing connection

to the database

client = pymongo.MongoClient("mongodb://localhost:27017/")

Database name

db = client["mydatabase"]

Collection name

col = db["gfg"]

replace with the help of

find_one_and_replace()

col.find_one_and_replace({'coursename': 'SYSTEM DESIGN'}, {'coursename': 'PHP'})

print the document after replacement

for x in col.find({}, {"_id": 0, "coursename": 1, "price": 1}): print(x)

`

Output:

Example 2:

Python3 `

import pymongo

establishing connection

to the database

client = pymongo.MongoClient("mongodb://localhost:27017/")

Database name

db = client["mydatabase"]

Collection name

col = db["gfg"]

replace with the help of

find_one_and_replace()

col.find_one_and_replace({'price': 9999}, {'price': 19999})

print the document after replacement

for x in col.find({}, {"_id": 0, "coursename": 1, "price": 1}): print(x)

`

Output: