2

MongoDBのあるコレクションから別のコレクションにデータまたはレコードを転送する方法と、あるコレクションから別のコレクションにデータを転送するときに「find()」条件を使用できるかどうかを知る必要があります。

知っている場合は、参照用に詳細を共有してください。

ノート:

次のエラーは、Largeコレクション(このコレクションに含まれる行数)からPHPを使用してレコードをフェッチする場合に発生します。

エラー:「インデックスエラーのないsort()のデータが多すぎます」

そのため、mongodbコンソールを使用して、あるコレクションから別のコレクションにデータを転送します。

  • クマラン
4

2 に答える 2

4

find()まず、可能であれば、クエリを実行しているものにインデックスを作成することをお勧めします。これは、 ensureIndex()...を使用して行うことができます。

コンソールからドキュメントを転送する方法については、次のとおりです。

> use source_database;
> var docs = db.source_collection.find({ something: 'foo' }); 
> use new_database;
> docs.forEach(function(doc) { db.new_collection.insert(doc) });

詳細については、プロセスを詳しく説明しているこのブログ投稿をご覧ください。

于 2012-07-25T08:09:34.357 に答える
2

Mongoで直接行うことができます:

db.source.find(some_conditions).forEach(function(doc){db.dest.save(doc)})
于 2012-07-25T07:53:08.100 に答える