Я использую агрегацию 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.