mongoDB:获取数组对象的字段值

时间:2016-01-26 09:58:14

标签: javascript arrays mongodb

我希望在对象(数组frmGen)中获取字段CenterScreen的值,其值为Window

public partial class Window : Form
{
    public Window()
    {
        InitializeComponent();
    }
}

所以这个结果将是30

我试过像

这样的东西
test

但这会给我完整的数组。但我需要选定的对象,只需要该对象的选定字段(即ePce6fBAHx9KeKjuM)。

2 个答案:

答案 0 :(得分:2)

test只是一个JS数组。使用常规数组语法访问其元素:

var result = Collection.findOne({_id: 'nAwt3b76c24mZfqxz'}).test["30"];

修改

从zangw的答案中,仅使用数组中的1个元素来检索整个对象。在评论测试元素之后:

db.getCollection('a').find(
    // put your nested document's condition instead of `$exists`
    {_id: 'nAwt3b76c24mZfqxz', test:{ $elemMatch: { "30": {$exists: true}}}},
    // add other fields you like to retrieve, e.g. "title":1
    {"test.30":1}
)

答案 1 :(得分:0)

试试这个

Collection.find({{_id: 'nAwt3b76c24mZfqxz'}}, {'test.30': 1, 'test.id': 1});

如果没有test

,请选择整个_id数组
Collection.find({{_id: 'nAwt3b76c24mZfqxz'}}, {'test': 1, '_id': 0});