javascript - 使用mongodb在javascript中创建多个数组的一个数组

标签 javascript node.js mongodb mongoskin

我的 mongodb 中有这个结构

    {
        category:['A','B'],
        info:.....,
    }
    {
        category:['A','F','T'],
        info:.....,
    }
    {
        category:['A','C'],
        info:.....,
    }
    {
        category:['D','B'],
        info:.....,
    }

我必须查询所有类别,

var db = mongo.db(read+"@127.0.0.1:27017/database",{safe:false});
db.collection('comercio').find({},{_id:0,'category.$':1},function(err, result_array)

第一个问题,有什么办法可以获取所有类别吗??另一种方法代替我的方法??

第二个问题....

我必须创建一个包含所有类别但不重复任何类别的数组...在本例中我必须创建一个包含此的数组...

all_categories=['A','B','C','D','F','T'];

再次感谢大家...

最佳答案

您必须使用聚合框架来执行此查询,如下所示:

db.comercio.aggregate( { $unwind : "$category"} );

unwind之后您可以使用其他聚合(例如组)来获取您需要的内容。

关于javascript - 使用mongodb在javascript中创建多个数组的一个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15105557/

相关文章:

java - Mongo 模板在 Spring.Mongodb 中按日期间隔聚合

java - 如何指定 MongoDB 中多个表之间的 @CollectionTable 关系?

javascript - 夜巡 E2E 测试 : Saving Image to Local Folder

javascript - 在url中的ajax请求之后捕获并更新变量值

javascript - Backbonejs 如何在一个模型更改时设置集合中所有其他模型的属性

javascript - Node.js:从不同文件发送 XML 响应

javascript - meteor.js 和 npm 需要 fs

node.js - 在 NPM 启动时下载模块

node.js - 有没有办法在不使用 npm 服务器的情况下构建 vue.js 组件?

excel - 如何将 mongoDB 数据导出为 CSV 格式?