sql >> データベース >  >> NoSQL >> MongoDB

複数の値を持つMongo$addToSet正しい構文

    UsersAndQuestionsを設定するにはオブジェクトを追加する必要があります:

    {$addToSet: {UsersAndQuestions: { userID: idToAdd, questionID: questionToAdd } }}
    

    更新。

    私は2つのクエリでそれを行います:

    Listing.update({_id: ObjectId(listingToUpdate), 'UsersAndQuestions.userID': idToAdd}, 
        {"$addToSet": {"UsersAndQuestions.$.questionID": questionToAdd}}
        , function (err, result) {
            if(result.n === 0){
                //we haven't found document with the userId - idToAdd
                //we need to insert to UsersAndQuestions document with this user
                Listing.update({_id: ObjectId(listingToUpdate)},
                    {$addToSet: {UsersAndQuestions: { userID: idToAdd, questionID: questionToAdd } }}, 
                    function(err, res){
    
                    })
            }
    })
    



    1. MongoDBに接続できません

    2. Sails.jsとWaterlineを使用してMongoDBサブドキュメント内の特定のキーを更新するにはどうすればよいですか?

    3. MongoDbで複数のレコードをアップサートする

    4. プロシージャはmongodbに存在します