如何显示集合中一个字段的所有值?

How do you display all the values of one field in a collection?

我有一个集合 AAA,其中包含字段名称、地址、phone_no、id。 return 一个字段的所有值的命令是什么?

示例:

AAA

{name : a, address : 123, phone_no : 456456, id : 123}
{name : b, address : 345, phone_no : 789789, id : 234}

如何编写一个命令来 return 一个字段的所有值,比如 phone_no? returned 值将是 {456456, 789789}

您可以在 "find" 调用中指定投影。对于上面的示例,您的调用将是:

AAA.find({}, {phone_no: 1});

第二个字段是您的投影。如果你离开它,它会 return 一切,否则你可以指定你想要的字段 return.

http://docs.mongodb.org/manual/reference/method/db.collection.find/

编辑:您还需要明确排除 _id 字段,因此要获得 phone_no,您需要使用:

AAA.find({}, {phone_no: 1, _id: 0});

假设你不想重复,你可以使用distinct:

db.AAA.distinct('phone_no')

输出:

[ 456456, 789789 ]