MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Warum erhalte ich einen pymongo.cursor.Cursor, wenn ich versuche, meine mongodb-Datenbank über pymongo abzufragen?

Die Methode find() von PyMongo gibt einen Cursor zurück. Um die Abfrage tatsächlich auf dem Server auszuführen und Ergebnisse abzurufen, durchlaufen Sie den Cursor mit list oder eine for-Schleife:

for doc in tweets.find({'screen_name': 'name'}):
    print(doc)

# Or:
docs = list(tweets.find({'screen_name': 'name'}))

Wenn tweets.find({"screen_name": "name"}).count() gibt 0 zurück, was bedeutet, dass keine Dokumente Ihrer Anfrage entsprechen.

Bearbeiten:Jetzt, wo Sie ein Beispieldokument gepostet haben, sehe ich, dass Sie Folgendes abfragen möchten:

list(tweets.find({'user.screen_name': 'name'}))

... seit dem screen_name Feld ist im user eingebettet Unterdokument.