У меня есть коллекция документов, содержащая массив объектов:
db.collection.insert({
arr: [
{ id: 1, text: 'foo' },
{ id: 2, text: 'bar' },
]
});
Есть ли способ извлечь / спроектировать / добавить поле одного элемента в этом массиве?Например, поле text
первого элемента массива.Я пробовал различные варианты $ addFields в MongoPlayground ,
db.collection.aggregate([
{
$addFields: { text1: '$arr.text' }
}
]);
, но ничего не дало только одно поле text
.В лучшем случае я получил оба с синтаксисом выше, но мне нужно только одно поле, чтобы использовать для него $ type, потому что кажется, что $type
не может проверять элементы массива .