Использование mongoimport с upsertFields с использованием ключа объекта второго уровня в качестве общего потока для обновления существующей коллекции - PullRequest
0 голосов
/ 31 октября 2019

У меня есть коллекция БД, которая существует, и структура каждого объекта выглядит следующим образом (см. Ниже), и я пытаюсь обновить ее с помощью файла JSON с аналогичной структурой, но вместо общего поиска обращайтесь к общему потоку metadata.dDocName. id монго.

Я попробовал эту команду: mongoimport --db = mydb --collection = prod --file = metadata.json --jsonArray --upsertFields = metadata.dDocName

Вот пример объекта в существующей коллекции:

{
"id":mongoID(12345),
"newURL":"someurl.com",
"childSiteID":54,
"metadata": {
   "dDocName":"PDF_12345",
   "keyToInject":"some string",
   "anotherKeyToInject": "another string"
  }
}

Вместо того, чтобы обновлять коллекцию и находить каждый объект, соответствующий dDocName, вставлять новые объекты. Заранее всем спасибо за помощь! Я действительно ценю это!

...