【问题标题】:Complex MongoDB Join Query复杂的 MongoDB 连接查询
【发布时间】:2021-04-07 13:34:38
【问题描述】:

我想获取特定用户正在关注他们的用户的食谱

target_user_id in following schema 等于 user_id in recipe schema

遵循架构

user_id:{type:mongoose.ObjectId, require:true},
target_user_id:{type:mongoose.ObjectId, require:true}

配方架构

user_id:{type:mongoose.Schema.ObjectId, require:true},
username:{type: String, require: true},
type: { type: String, require: true },
title: { type: String, require: true },
description: { type: String, require: false },
ingredients: { type: Array, require: true },
directions: { type: Array, require: true },
cook_note: { type: String, require: false },
reviews_score: { type: Array, require: false, default:[0,0,0,0,0]}

【问题讨论】:

    标签: database mongodb mongodb-query


    【解决方案1】:

    已解决

    const {_id:user_id} = req.user    
    const recipes = await recipe_model.aggregate([
                    { $lookup:{
                        from:'follows',
                        localField: "user_id",
                        foreignField: "target_user_id",
                        as: "followers"
                    }},
                    { $match : {followers: {$elemMatch:{ user_id: { $eq: user_id } } }}}
                ])
    

    【讨论】:

      猜你喜欢
      • 2011-10-21
      • 2010-11-02
      • 1970-01-01
      • 2023-03-08
      • 1970-01-01
      • 1970-01-01
      • 2012-11-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多