首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在mongodb中如何使用group或bucket?

在mongodb中如何使用group或bucket?
EN

Stack Overflow用户
提问于 2018-02-16 21:46:03
回答 1查看 1.8K关注 0票数 0

我的数据如下所示:

如何按专业对数据进行整理和分组。

我试着这样做,但结果不一样。格式。

代码语言:javascript
复制
var data = db.collection('hms').aggregate([
    { $match: { speciality: doctorSpeciality } },
    { $project: { doctor: 1, speciality: 1, meetting_hours: 1, hospital:1 } },
    {
        $group: {
            "_id": "$doctor_speciality",
            "speciality": {$push:"$speciality"},
            "doctor":{$push :"$doctorSpeciality"},
            "hospital":{$push : "$hospital_name" },
            "meetting_hours":{$push: "$meetting_hours"}
        }
    }
]);
data.toArray(function(err, doc){
    console.log("result :::" ,doc);
}); 

我想要这样的格式:

代码语言:javascript
复制
0:[
   { doctor:Hussain,speciality:Physician,hospital:HMS,date:2018-2-1},
   { doctor:Hussain,speciality:Physician,hospital:HMS,date:2018-2-2}
 ],
1: [{doctor:Reza,speciality:Physician,hospital:HMS,date:2018-2-1}]

诸若此类。

我正在使用MongoClient驱动程序。

有没有人可以帮我或者给我一些提示?

EN

回答 1

Stack Overflow用户

发布于 2018-02-16 22:59:56

你只需要调整一下,一次推入所有的值,而不是一次推入一个字段。

试一试

代码语言:javascript
复制
db.collection('hms').aggregate([
  {"$match":{"speciality":doctorSpeciality}},
  {"$project":{"doctor":1,"speciality":1,"meetting_hours":1,"hospital":1}},
  {"$group":{
    "_id":"$doctor_speciality",
    "data":{
      "$push":{
        "speciality":"$speciality",
        "doctor":"$doctor_speciality",
        "hospital":"$hospital_name",
        "meetting_hours":"$meetting_hours"
      }
    }
  }}
])
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48828168

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档