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

マングース:配列内の既存の要素を更新する方法は?

    さて、更新されたドキュメントを返す必要がない場合は、これを試してください-これは書き込み結果を返すだけで、これは1回のDB呼び出しで実現できます:

    const creatStock = async (symbol, webApiData) => {
        try {
            // reversed array
            const webApiDataReversed = webApiData.reverse();
            const query = { symbol };
    
            await Stock.bulkWrite([
                {
                    updateOne:
                    {
                        "filter": query,
                        "update": { $pop: { data: 1 } }
                    }
                }, {
                    updateOne:
                    {
                        "filter": query,
                        "update": {
                            $addToSet: {
                                data: webApiDataReversed
                            }
                        }
                    }
                }
            ])
        } catch (ex) {
            console.log(`creatStock error: ${ex}`.red);
        }
    };
    

    参照: mongoDB BulkWrite



    1. レコード内のフィールド数に基づくMongodbクエリ

    2. MongodbのISO日付が1日前に表示されるのはなぜですか?

    3. node-webkitを使用したDemeteorizer

    4. mongodb-native findOne()でフィールド名として変数を使用するにはどうすればよいですか?