sql >> Database >  >> NoSQL >> MongoDB

Waarom krijg ik een pymongo.cursor.Cursor wanneer ik mijn mongodb db via pymongo probeer te bevragen?

De methode find() van PyMongo retourneert een cursor. Om de query daadwerkelijk op de server uit te voeren en resultaten op te halen, herhaalt u de cursor met list of een for-lus:

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

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

If tweets.find({"screen_name": "name"}).count() retourneert 0, dit betekent dat er geen documenten overeenkomen met uw zoekopdracht.

Bewerken:nu je een voorbeelddocument hebt gepost, zie ik dat je een zoekopdracht wilt uitvoeren zoals:

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

... sinds de screen_name veld is ingesloten in de user subdocument.



  1. Ingegeven argument moet een reeks van 24 hexadecimale tekens zijn - ik denk van wel

  2. Hoe mongo-commando's uit te voeren via shellscripts?

  3. Is het een slechte gewoonte om een ​​Mongo ObjectId als gebruikers-ID te gebruiken?

  4. MongoDb Select Query Issue met reguliere expressie (begint met en eindigt met)