相关疑难解决方法(0)

如何在Mongoose中查询不同的值?

我有一个问题,我希望能够获得集合的所有独特城市,我的代码看起来像这样:

var mongoose = require("mongoose"),
Schema = mongoose.Schema;

var PersonSchema = new Schema({
    name: String,
    born_in_city: String
});
var Person = mongoose.model('Person', PersonSchema);
Run Code Online (Sandbox Code Playgroud)

在原生的MongoDb中,我可以做到db.person.distinct("born_in_city"),但似乎没有任何等同于Mongoose.是我自己迭代所有文档的唯一选择,还是有更好的解决方案?

为了尝试使用node-mongodb-native回复者建议的底层,我尝试这样做:

mongoose.connection.db.collections(function(err, collections){
  collections[0].distinct('born_in_city', function( err, results ){
    console.log( err, results );
  });
});
Run Code Online (Sandbox Code Playgroud)

然而,它results是空的,没有错误.我也希望能够只按名称获取所需的集合,而不是必须过滤collections返回的内容.

mongoose mongodb node.js

64
推荐指数
2
解决办法
7万
查看次数

标签 统计

mongodb ×1

mongoose ×1

node.js ×1