我有一个包含两个集合的数据库。
集合cars
的文档如下所示:
{ license_number: "123456", name: "tesla" }
{ license_number: "654321", name: "ford" }
{ license_number: "987654", name: "volvo" }
集合greatCars
的文档如下所示:
{ license_number: "123456" }
我想导出"加入"这两个集合中的CSV文件如下所示:
license_number, name, isGreat
123456, tesla, TRUE
654321, ford, FALSE
987654, volvo, FALSE
(请不要冒犯。这只是一个例子,我对汽车一无所知。)
答案 0 :(得分:1)
您可以创建一个简短的javascript程序,将您要导出的数据传输到可以导出的新临时集合中。
创建文件moodle-editor_atto-editor: Plugin 'testplugin' could not be found - skipping initialisation
export.js:
从cmd行运行:
//initialise the export results collection
db.export.results.drop()`;
//create a cursor containing the contents of the list1 collection
cursor = db.list1.find();
while (cursor.hasNext()) {
doc = cursor.next();
//Check if the document exists in the list2 collection
list2 = db.list2.find({"<id_fieldname>": doc.<id_fieldname>});
if (list2.hasNext()) {
//if it does exist, add the document from list1 to the new export collection
db.export.results.insert(doc);
}
}
print(db.export.results.count() + " matching documents found");
它将创建一个名为# mongo "localhost:27017/<dbname>" export.js
的集合,其中包含list1集合中的文档,其中包含list2(在您的情况下为export.results
和cars
)集合中具有匹配id字段的文档。然后,您可以导出或转储此集合:
greatCars