0

Mongod deb 专辑集合包含以下项目:

var album = {
    name: 'album1',
    tracks: [{
        title: 'track0',
        language: 'en',
        processing: {
            tasks: [
               {_id: 1, name: 'someTask1'},
               {_id: 2, name: 'someTask2'},
            ]
        }


    },{
        title: 'track1',
        language: 'en',
    },{
        title: 'track2',
        language: 'es',
    }]
}

我只需要选择一个专辑、track0 和 _id 1 的任务,这样结果集就会看起来像(只包含一个轨道和一个任务)

{
    name: 'album1'
    tracks: [{
        title: 'track0',
        language: 'en',
        processing: {
            tasks: [
               {_id: 1, name: 'someTask1', },
            ]
        }
   ]
}

如果不使用聚合框架仅使用查找,是否可以做到这一点?

我尝试使用 $elemMatch 和 .$ 投影来限制输出,但它似乎不适用于嵌套级别 > 1(这种情况下的任务)=(

4

0 回答 0