62
задан 16 May 2012 в 23:15

3 ответа

Это - моя реализация в Python (pymongo):

def copy_collection(client, from_db, from_coll, to_db=None, to_coll=None):
    to_db = from_db if to_db is None else to_db
    to_coll = from_coll if to_coll is None else to_coll
    assert (to_db != from_db or to_coll != from_coll), "Copy Error: Source and destination can't be same!"
    documents = client[from_db][from_coll].find()
    client[to_db][to_coll].insert_many([d for d in documents])
0
ответ дан 31 October 2019 в 13:04

Самый быстрый путь db.collection.copyTo () .

Примечание, что это удерживается от использования начиная с версии 3.0.

-1
ответ дан 31 October 2019 в 13:04
db.myoriginal.aggregate([ { $match: {} }, { $out: "mycopy" } ])

Это намного быстрее, чем выполнение многих вставок в цикле foreach.

186
ответ дан 31 October 2019 в 13:04

Другие вопросы по тегам:

Похожие вопросы: