私はMongodbが初めてです。ですから、この問題について私を導いてください。ドキュメントのコレクションがあり、コレクションから不要なフィールドを削除したいと考えています。自動化された方法はありますか?$unsetを使用できることはわかっていますが、多くのフィールドを削除したい場合は、フィールドごとにこの操作を繰り返す必要があるようです。これに従ってルビーを使用してそれを実行できることがわかりましたが、すべてのフィールドではなく一部のフィールドを削除するのはどうですか?
1 に答える
1
一度に$unset
(任意の)多くのフィールドを削除できます。複数の更新と合わせて、自動化された方法のようなものを取得します。したがって、一部のフィールドのみを削除するには、この例のドキュメントを検討してください{_id:OID, a: { b: 2, c: 3}, d : [1,2]}
。これを使用$unset : {"a.b" : 1, d : 1}
して、a のネストされた要素 b と配列 d を削除できます。
配列の一部の項目のみを削除したい場合は、位置演算子を使用する必要があると思いますが、私はそれを使用しませんでした。
于 2012-06-12T06:56:25.930 に答える