【发布时间】:2019-10-27 14:50:50
【问题描述】:
我有一个包含对象数组的文档集合:
db.collection.insert({
arr: [
{ id: 1, text: 'foo' },
{ id: 2, text: 'bar' },
]
});
有没有办法在该数组中提取/投影/添加 one 元素的字段?例如,数组第一个元素的text 字段。我在MongoPlayground 中尝试了$addFields 的各种变体,
db.collection.aggregate([
{
$addFields: { text1: '$arr.text' }
}
]);
但没有生成一个text 字段。充其量,我得到了两者,使用上面的语法,但我只想要一个字段,以便在其上使用 $type,因为它显示为$type can't inspect array elements。
【问题讨论】:
标签: mongodb aggregation-framework