MongoDB 聚合管道提取深层嵌套数组中动态键子文档
文档嵌了多层数组:联赛下有卡片,卡片下有用户,用户的vote字段又是以动态数字为键的对象。要把某个具体用户的整个vote对象取出来,find加投影往往只能拿到数组元素的一个字段值,拿不到完整子文档。聚合管道配合$filter与$unwind可以精确完成这类提取。
问题现象
文档结构简例如下:
{_id:"693ae6dc320b2bb92635361e",cards:[{文档嵌了多层数组:联赛下有卡片,卡片下有用户,用户的vote字段又是以动态数字为键的对象。要把某个具体用户的整个vote对象取出来,find加投影往往只能拿到数组元素的一个字段值,拿不到完整子文档。聚合管道配合$filter与$unwind可以精确完成这类提取。
文档结构简例如下:
{_id:"693ae6dc320b2bb92635361e",cards:[{