MongoDB链接关系

MongoDB链接关系,mongodb,mongoose,mongodb-query,Mongodb,Mongoose,Mongodb Query,我有两个表用户(字段:姓名、年龄)和链接(字段:标题、url、用户ID(参考用户))。用户与链接之间存在一对多关系。现在我想运行一个查询,如:select*from链接,其中用户年龄超过26岁 我一直在尝试以下查询: Links .find({title:'Chemistry'}) .populate({ path: 'userId', select: 'name.first age -_id', match: {age: {$g

我有两个表用户(字段:姓名、年龄)和链接(字段:标题、url、用户ID(参考用户))。用户与链接之间存在一对多关系。现在我想运行一个查询,如:select*from链接,其中用户年龄超过26岁

我一直在尝试以下查询:

Links
    .find({title:'Chemistry'})
    .populate({
        path: 'userId',
        select: 'name.first  age -_id',
        match: {age: {$gte: 26}}
    })
    .exec( function(err,data) {
        if (err) console.log( err  );
        console.log( 'data', data);
        res.jsonp(data);
});
这给了我以下结果:

[

    {
        _id: "54037d00e74f00f917e709ff",
        title: "Chemistry",
        url: "http://chemistry.com",
        comment: "Great chemo slides",
        favourites: "507",
        userId: {
            name: {
                first: "Bob"
            },
            age: 31
        },
        tags: [
            "tutorials",
            "chemo"
        ]
    },
    {
        _id: "540457f2557cded82b331ee2",
        title: "Chemistry",
        url: "http://chemistry.com",
        comment: "Great chemo slides",
        favourites: "507",
        userId: null,
        tags: [
            "tutorials",
            "chemo"
        ]
    }

]

请注意,第二个对象中的userId为null。我不确定我的查询是否正确,但我认为它应该是一个足够简单的查询,mongodb可以支持它。我可能不知道怎么做,你知道吗?谢谢。

在填充之前,链接文档是什么样子的?链接文档中引用的用户文档看起来像什么?@wdberkeley-你是说我有什么模型模式吗?我不确定我是否了解你们的问题,但在填充之前的链接文档和上面的文档相同,除了userId对象。