как переименовать имя ключевого поля встроенного документа - PullRequest
0 голосов
/ 02 сентября 2018
{
    "_id" : ObjectId("5b8b8ea4b918dd57eb65a314"),
    "roll_no" : "029",
    "address" : {
        "city" : "abc",
        "street" : "xyz"
    }
}

Я хочу переименовать адрес-> добавить

Я пробовал это:

db.people.update({roll_no:"029"},{$rename:{"address.city":"add.city"}});

db.people.update({roll_no:"029"},{$rename:{"address":"add"}});

1 Ответ

0 голосов
/ 02 сентября 2018

Я полагаю, вы пытаетесь переименовать поле, это можно сделать с помощью:

db.people.updateMany( {}, { $rename: { "address": "add" } } )

Он изменит ключ «адрес» на «добавить» во всех полях. Однако, если вы просто хотите обновить одну или две совпадающие строки, вы можете сделать это с помощью:

db.people.updateMany( {_id: 1}, { $rename: { "address": "add" } } )

Надеюсь, это поможет.

Спасибо, Каника

...