Open In App

What is a PyMongo Cursor?

MongoDB is an open-source database management system that uses the NoSql database to store large amounts of data. MongoDB uses collection and documents instead of tables like traditional relational databases. MongoDB documents are similar to JSON objects but use a variant called Binary JSON (BSON) that accommodates more data types.

What is a Cursor?

When you use the function db.collection.find() to search documents in collections then as a result it returns a pointer. That pointer is known as a cursor. Consider if we have 2 documents in our collection, then the cursor object will point to the first document and then iterate through all documents which are present in our collection. 



PyMongo Cursor:

As we already discussed what is a cursor. It is basically a tool for iterating over MongoDB query result sets. This cursor instance is returned by the find() method. Consider the below example for better understanding.



Example: Sample database is as follows: 

  




from pymongo import MongoClient
     
# Connecting to mongodb   
client = MongoClient('mongodb://localhost:27017/')
 
with client:
     
    db = client.GFG
    lectures = db.lecture.find()
 
    print(lectures.next())
    print(lectures.next())
    print(lectures.next())   
     
    print("\nRemaining Lectures\n")
    print(list(lectures))

Output: 

In this, find() method returns the cursor object.

lectures = db.lecture.find()

With the next() method we get the next document in the collection.

lectures.next()

With the list() method, we can transform the cursor to a Python list.

Article Tags :