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

findOneAndUpdateを使用するときに、ドキュメントが挿入または更新されたかどうかを確認するにはどうすればよいですか?

    2019年8月8日(Mongooseバージョン5.6.9)の時点で、設定するプロパティは「passRawResult」ではなく「rawResult」です:

    M.findOneAndUpdate({}, obj, {new: true, upsert: true, rawResult:true}, function(err, d) {
        if(err) console.log(err);
        console.log(d);
    });
    

    出力:

    { lastErrorObject:
       { n: 1,
         updatedExisting: false,
         upserted: 5d4befa6b44b48c3f2d21c75 },
      value: { _id: 5d4befa6b44b48c3f2d21c75, rating: 4, review: 'QQQ' },
      ok: 1 }
    

    結果は、コールバックの3番目のパラメーターではなく、2番目のパラメーターとして返されることにも注意してください。ドキュメントはd.valueで取得できます。



    1. MongoDBでグループ化する方法

    2. エラー:querySrv ENODATA _mongodb._tcp.blog-cluster-0hb5z.mongodb.net at QueryReqWrap.onresolve [as oncomplete]

    3. mongodbは、ポイントがポリゴン内にあるかどうかを確認します

    4. クエリのパフォーマンスを分析する-mongoDB