MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Pymongo:повторете всички документи в колекцията

cursor.forEach() не е достъпно за Python, това е функция на JavaScript. Ще трябва да получите курсор и да го повторите. Вижте урок за PyMongo:запитване за още от един документ , където можете да направите:

for document in myCollection.find():
    print(document) # iterate the cursor

За съжаление тук липсва информация за отстраняване на грешки защо и какво е „Убит“. Въпреки че, ако искате да съпоставите всичко, можете просто да посочите:

cursor = db.myCollection.find({"name": {$regex: /.*/}}) 

Предвид това поле name съдържа низови стойности. Въпреки че използва $exists за да проверите дали поле name съществува би било за предпочитане пред използването на регулярен израз.

Докато използването на $exists във вашия пример по-горе е неправилен. Липсва ви s в $exists . Отново, за съжаление не знаем много информация за това какво означава „не работи“, за да помогнем за по-нататъшното отстраняване на грешки.

Ако пишете този скрипт за упражнение на Python, бих препоръчал да прегледате:

Можете също да се запишете в безплатен онлайн курс в MongoDB University за M101P:MongoDB за разработчици на Python .

Ако обаче просто се опитвате да изпълните задачата си да експортирате CSV от колекция. Като алтернатива можете просто да използвате mongoexport на MongoDB . Което има поддръжка за:

Вижте използване на mongoexport за повече информация.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Предимство на уникален индекс в MongoDB

  2. Mongodb - все още ли са значителни проблемите с надеждността?

  3. Изтрийте всичко в база данни на MongoDB

  4. pullAll, докато премахвате вградени обекти

  5. mongodb множество агрегации в една операция