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

Mongodb 3.6.0-rc3アレイフィルターが機能していませんか?

    これをrobomongoで入力していますか?それのように見えます!もしそうなら、それは動作しません。ネストされた配列をMongoDBで更新することについての私のメモを読んでください。これは、シェルヘルパーメソッドが現在実装されている方法のために、「古いシェル」またはそれに基づくもの(robomongoはシェルベースのビルド)では機能しないと言います。

    皮肉なことに、これは.update()の"options"引数で指定されているためです。 メソッドと同様に、構文は通常、最近のすべてのリリースドライバーバージョンと互換性があります。

    ただし、これはmongoには当てはまりません。 シェル、メソッドがそこで実装される方法(「下位互換性のために皮肉なことに」)arrayFilters 引数は、以前のMongoDBサーバーバージョンおよび「レガシー」.update()との「下位互換性」を提供するためにオプションを解析する内部メソッドによって認識および削除されません。 API呼び出しの構文。

    したがって、mongoでコマンドを使用する場合 シェルまたはその他の「シェルベース」の製品(特にRobo 3T)には、3.6以降の開発ブランチまたは製品リリースの最新バージョンが必要です。

    したがって、リリース候補を「試して」みたい場合は、バンドルされているmongoを使用してください。 そのバージョンでシェルを作成するか、標準のドライバーを使用してコードを実行します。



    1. 日付間隔でグループ化

    2. MongoDBのestimatedDocumentCount()

    3. MongoDB-配列内のオブジェクトを更新または挿入します

    4. 初心者向けのHadoopMapReduceチュートリアル