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

MongoDB$pull構文

    「secondArray」にはネストされた要素構造があるため、位置$を使用する場合は、クエリで照合する外部要素を特定する必要があります。 更新の演算子。基本的に次のようなものが必要です:

    bulk.find({ 
        "_id": new mongo.ObjectID(req.session._id), 
        "secondArray._id": "7423" 
    }).update({
        "$pull": { 
            "firstArray": { "_id": "153" },
            "secondArray.$.firstArrayIds": 153
        }
    });
    

    したがって、実際には、一般的なドキュメントIDに加えて、リクエストで渡す必要のある「2つの」ID値があります。これはネストされていますが、「外部」レベルと1つの配列でのみ一致しているため、問題ありません。複数の配列の位置を一致させようとした場合、これは位置演算子では不可能です。




    1. node.jsモジュールで非同期にエクスポートを初期化しても大丈夫ですか?

    2. キャッチされないエラー:修飾子オプションがtrueの場合、検証オブジェクトには少なくとも1つの演算子が必要です

    3. node.jsからmongodbに接続するときのECONNREFUSEDエラー

    4. MongoDBおよびASP.NETMVCを使用した効率的なページング方法