Mongoimport внутри того же документа - PullRequest
0 голосов
/ 23 сентября 2018

Я использую оператор импорта

mongoimport -c <collection> -d <db> --mode merge --file test.json

для отправки документов JSON в Mongo.Однако каждый новый импорт создает новый документ.Поскольку это упущение, я хочу проникнуть внутрь существующего документа и вставить / обновить в соответствии с идентификаторами.Например, в приведенном ниже примере не должно быть вставок, потому что они идеально совпадают.

{
"_id" : ObjectId("5ba7896fde583898f699d01b"),
"mydata" : [
    {
        "id" : 1,
        "first_name" : "Jeanette",
        "last_name" : "Penddreth",
        "email" : "jpenddreth0@census.gov",
        "gender" : "Female",
        "ip_address" : "26.58.193.2"
    },
    {
        "id" : 2,
        "first_name" : "Giavani",
        "last_name" : "Frediani",
        "email" : "gfrediani1@senate.gov",
        "gender" : "Male",
        "ip_address" : "229.179.4.212"
        }
    ]
}
{
"_id" : ObjectId("5ba78975de583898f699d020"),
"mydata" : [
    {
        "id" : 1,
        "first_name" : "Jeanette",
        "last_name" : "Penddreth",
        "email" : "jpenddreth0@census.gov",
        "gender" : "Female",
        "ip_address" : "26.58.193.2"
    },
    {
        "id" : 2,
        "first_name" : "Giavani",
        "last_name" : "Frediani",
        "email" : "gfrediani1@senate.gov",
        "gender" : "Male",
        "ip_address" : "229.179.4.212"
        }
    ]
}

Как я могу импортировать все будущие данные в существующий документ mydata и сравнивать их на основе идентификатора?

...