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

MongodDB $は、配列から1つの要素のみをプルします

    いいえ、現時点ではこのようなものはありません。多くの人がすでにこの機能をリクエストしており、 mongodbJira で追跡できます。 。あなたが見る限り、それは解決されておらず、スケジュールもされていません(つまり、近い将来運がないことを意味します)。

    唯一のオプションは、アプリケーションロジックを使用してこれを実現することです。

    1. 必要で、userTagsがfooである要素を見つけます
    2. userTagsを繰り返し処理し、そこから1つのfooを削除します
    3. その要素を新しいuserTagsで更新します

    この操作は原子性を破壊することに注意してください。ただし、Mongoはそれを行うためのネイティブなメソッドを提供していないため、何らかの方法で原子性を破壊します。

    この質問には答えないが、既存のスキーマをリファクタリングするアプローチの1つを表すため、1つの代替ソリューションを新しい答えに移動しました。また、それは非常に大きくなり、元の答えよりもはるかに大きくなり始めました。



    1. node.jsを使用して、mongodbのネストされたサブドキュメントであるオブジェクト内の値をどのように合計しますか?

    2. ハウツー:ClouderaManagerを使用してClouderaSearchをクラスターに追加する

    3. SQL COALESCE()の説明

    4. オブジェクトをMongooseの配列スキーマにプッシュする