在我的MongoDB中,我有一个学生集合,其中有10条记录,字段为name和roll。这个收藏的一个记录是:
{
"_id" : ObjectId("53d9feff55d6b4dd1171dd9e"),
"name" : "Swati",
"roll" : "80",
}
我想检索字段滚动仅为集合中的所有10条记录,因为我们会在传统数据库中使用:
SELECT roll FROM student
我浏览了很多博客,但所有的结果都是一个必须有WHERE子句的查询,例如:
db.students.find({ "roll": { $gt: 70 })
查询等价于:
SELECT * FROM student WHERE roll > 70
我的要求是只找到一个钥匙,不附带任何条件。它的查询操作是什么。
我认为mattingly890有正确的答案,这里是另一个例子以及模式/命令
db.collection。Find ({}, {your_key:1, _id:0})
> db.mycollection.find().pretty();
{
"_id": ObjectId("54ffca63cea5644e7cda8e1a"),
"host": "google",
"ip": "1.1.192.1"
}
db.mycollection.find({},{ "_id": 0, "host": 1 }).pretty();
为了更好地理解,我写了类似的MySQL查询。
Selecting specific fields
MongoDB: db.collection_name.find({},{name:true,email:true,phone:true});
SELECT name,email,phone FROM table_name;
Selecting specific fields with where clause
MongoDB: db.collection_name.find({email:'you@email.com'},{name:true,email:true,phone:true});
SELECT name,email,phone FROM table_name WHERE email = 'you@email.com';