Как сбросить поле onError или onNull в mongodb? - PullRequest
0 голосов
/ 23 сентября 2019

Я использую агрегацию mongodb 4.2 при выполнении операции updateMany.Точная операция, которую я пытаюсь выполнить, заключается в преобразовании типа поля.

Ниже приведен запрос, который я выполняю.

db.getCollection('MyCollectionName').updateMany(
{},
[{$set: {a : { $convert: { input: '$a', to: 'double', onError: null, onNull: null } }}}]
)

Это устанавливает значение моего поля в null.Это создает проблемы для моих будущих запросов, таких как {$ push: {a: 'x'}} или {$ set: {'a.nestedField': 'x'}} ,Я могу проверить тип данных, но это похоже на накладные расходы.

Требуемый запрос - это какое поле $ unset в случае onError или onNull.

...