1
我想限制我的查询结果为一组字段。这是我的证件之一:MongoDB返回数组中的特定字段
{
"_id" : "WA9QRuiWtGsr4amtT",
"status" : 3,
"data" : [
{
"name" : "0",
"value" : "Text ..."
},
{
"name" : "1",
"value" : "12345678"
},
{
"name" : "2",
"value" : "Text"
},
{
"name" : "4",
"value" : "2"
},
{
"name" : "8",
"value" : true
},
{
"name" : "26",
"value" : true
},
],
"userId" : "7ouEumtudgC2HX4fF",
"updatedAt" : NumberLong(1415903962863)
}
我想限制输出状态区域以及一个第一和第三的数据文件。
这是我的尝试:
Meteor.publish('cases', function() {
var fields = {
currentStatus: 1,
'data.0': 1,
'data.2': 1
};
return Cases.find({}, { fields: fields });
});
可悲的是它不工作。我发现的其他东西是$ elemMatch,但它只返回第一个元素:
data: {
$elemMatch: {
name: {
$in: ['0', '2']
}
}
},
如何限制输出到这些字段?
数据如何处理[0]或数据[0]?没有'' – Sindis