syam1986 Ответов: 1

Как обновить адрес электронной почты в верхнем регистре в mongodb


У меня есть документ в базе данных Mongo, как показано ниже

{
"_id" : ObjectId("1234"),
"контакты по электронной почте":[
{
"emailPosition": 1,
"введено": "100@qa.com"
}
]
}

Я хотел бы обновить адрес электронной почты в верхнем регистре

Что я уже пробовал:

Я попробовал следующий сценарий:

дБ.коллекции.обновление({"emailContacts.значение emailaddress":{"$существует": правда},
{$комплект:"emailContacts.значение emailaddress": $toUpper:{"emailContacts.значение emailaddress"}},{ь: правда}});

приведенный выше код не работает. может ли кто-нибудь предложить лучший способ обновить адрес электронной почты?

1 Ответов

Рейтинг:
1

MadMyche

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

Тем не менее, то, что вы попробовали, - это первое, что я нашел; а затем я нашел и это

db.whois.find({ "source": { "$exists": true } }).forEach(function(doc) {
    db.whois.update(
        { "_id": doc._id },
        { "$set": { "source": doc.source.toUpperCase() } }
    );
});
Ссылка:
MongoDB – обновление до верхнего регистра – Mkyong.com[^]