我有一个动态嵌套字段,例如user.com1.grp1.history
,其中history
是一组哈希表。
样本结构:
{
_id: "123456",
user: {
com1: {
grp1: {
history: [
{
action: "something",
...
}
...
]
},
grp2: {
history: [
{
action: "something else"
...
}
...
]
},
},
com2: {
...
}
}
}
当我想获得history
的{{1}}的最后一项时,这种方法可以正常工作:
grp
但是这里的问题是db.user.find({}, {user.com1.grp1.history: {$slice: -1}})
和com
是动态名称,每个grp
包含许多动态user
,每个com
包含许多动态com
,我无法为其查询。
在这种情况下,如何获得每个grp
的{{1}}的最后一个物品?