Python MongoDB – find_one Query
This article focus on the find_one() method of the PyMongo library. find_one() is used to find the data from MongoDB.
Prerequisites: MongoDB Python Basics
Let’s begin with the find_one() method:
Importing PyMongo Module: Import the PyMongo module using the command:
from pymongo import MongoClient
- If MongoDB is already not installed on your machine, one can refer to the guide og how to Install MongoDB with Python.
- Creating a Connection: Now we had already imported the module, it’s time to establish a connection to the MongoDB server, presumably which is running on localhost (host name) at port 27017 (port number).
client = MongoClient(‘localhost’, 27017)
Accessing the Database: Since the connection to the MongoDB server is established. We can now create or use the existing database.
mydatabase = client.name_of_the_database
Accessing the Collection: We now select the collection from the database using the following syntax:
collection_name = mydatabase.name_of_collection
Finding in the collection: Now we will find in the collection using find_one() function. This function return only one document if the data is found in the collection else it returns None. It is ideal for those situations where we need to search for only one document. Syntax:
find_one(filter=None, *args, **kwargs)
Example 1: Sample Database:
Python3
from pymongo import MongoClient
client = MongoClient( 'localhost' , 27017 )
mydatabase = client.GFG
mycollection = mydatabase.Student
result = mycollection.find_one({ 'Branch' : 'CSE' })
print (result)
|
Output:
{'_id': 1, 'name': 'Vishwash', 'Roll No': '1001', 'Branch': 'CSE'}
Example 2:
Python3
from pymongo import MongoClient
client = MongoClient( 'localhost' , 27017 )
mydatabase = client.GFG
mycollection = mydatabase.Student
result = mycollection.find_one({ 'Branch' : 'CSE' },
{ '_id' : 0 , 'name' : 1 , 'Roll No' : 1 })
print (result)
|
Output:
{'name': 'Vishwash', 'Roll No': '1001'}
Last Updated :
04 Jul, 2022
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...