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

埋め込まれたドキュメントをmongodbドキュメントの新しいフィールドに挿入します

    あなたはそれを行うことができます

    db.test.update(
       { _id : 133 },
       { $set : { PackSizes:  {_id: 123, PackSizeName:"xyz", UnitName:"pqr"}} }
    )
    

    PackSizesは、配列の有無にかかわらず、任意のドキュメントにすることができます。

    結果ドキュメントは

    になります
    {
        "_id" : 133,
        "Name" : "abc",
        "Price" : 20,
        "PackSizes" : {
            "_id" : 123,
            "PackSizeName" : "xyz",
            "UnitName" : "pqr"
        }
    }
    

    更新: 新しいフィールドとメンバーを配列に追加するには、

    元のドキュメントがあると仮定します

    {
       _id: 133,
       Name: "abc",
       Price: 20
    }
    

    ステップ1:新しいフィールドを追加する:PackSizesは配列です

    db.test.update(
       { _id : 133 },
       { $set : {PackSizes: [ {_id: 123, PackSizeName:"xyz", UnitName:"pqr"}]}}
    )
    

    ステップ2:新しいアイテムを配列にプッシュする

    db.test.update(
       { _id : 133 },
       { $push : { PackSizes: {_id: 124, PackSizeName:"xyz", UnitName:"pqr"}} }
    )
    

    {
        "_id" : 133,
        "Name" : "abc",
        "Price" : 20,
        "PackSizes" : [ 
            {
                "_id" : 123,
                "PackSizeName" : "xyz",
                "UnitName" : "pqr"
            }, 
            {
                "_id" : 124,
                "PackSizeName" : "xyz",
                "UnitName" : "pqr"
            }
        ]
    }
    


    1. redis-cliは127.0.0.1にリダイレクトされました

    2. マングースの埋め込みドキュメントを更新するにはどうすればよいですか?

    3. 個別のレコード値を取得する

    4. MacOSSierraでOpenSSLが見つかりません