0
我想基于数组索引而不是(主键)从一个集合中连接两个数组。MongoDB 3.2:基于数组索引连接两个数组
数据看起来是这样的:
{"_id" : ObjectId("1"),
"clicks" : {
"cumulative" : {
"data" : [
3,
7,
8
]
},
"daily" : {
"data" : [
3,
4,
1
]
}
},
"websiteId" : "abcdef"
"day" : {
"isoDate" : [
ISODate("2016-07-07T02:00:00.000+02:00"),
ISODate("2016-07-08T02:00:00.000+02:00"),
ISODate("2016-07-09T02:00:00.000+02:00")
]}
},
....
我想加盟day.isoDate基于每个数组的索引clicks.cumulative.data。那么该表应该是这样的:
ObjectID Date Clicks
1 2016-07-07 3
1 2016-07-08 7
1 2016-07-09 8
我试过到目前为止:
db.collection1.aggregate([
{$unwind: "$day.isoDate"},
{$match: {"websiteId": "abcdef"}
}
,
{$group: {_id: "$day.isoDate.Value"}}
])
没有任何人有一个建议?
就像一个魅力!非常感谢你。 –