我的思维方式一直在思考sql这样做,并且似乎无法完全掌握使用mongodb shell来获得我想要的答案。我有一个集合,我想在其中返回多条信息,我将从中导出到csv文件中。
这是我正在看的系列:
"_id" : ObjectId("32eri3u8euhf748303"),
"email" : "userEmail@email.com",
"firstName" : "John",
"lastName" : "Johnson",
"classes" : {
"kjsfd434892e38dsidf8e920" : {
"_id" : ObjectId("kjsfd434892e38dsidf8e920"),
"className" : "English 101"
}
}
我有一个用户列表,有些用户可以有多个班级。如何编写查询语句,以便为所有用户返回姓名,电子邮件地址和类?
答案 0 :(得分:1)
在这里,使用:
var mongodb = require('mongodb');
var MongoClient = mongodb.MongoClient;
var url = 'mongodb://localhost:27017/database_name';
MongoClient.connect(url, function (err, db) {
if (err) {
console.log('Unable to connect to the mongoDB server. Error:', err);
} else {
console.log('Connection established to', url);
var collection = db.collection('users');
collection.find({}, {"classes.kjsfd434892e38dsidf8e920.className": 1}).toArray(function (err, users) {
if (err) {
console.log(err);
} else if (users.length) {
console.log('Found:', users);
} else {
console.log('No users found');
}
db.close();
});
}
});