Node.js 不带组累加器运算符的Mongodb聚合
如何在没有累加器运算符的情况下创建聚合组 这是我的剧本:Node.js 不带组累加器运算符的Mongodb聚合,node.js,mongodb,Node.js,Mongodb,如何在没有累加器运算符的情况下创建聚合组 这是我的剧本: var filterData={SAL04:0,SAL05:0,SAL06:0,SAL07:0,SAL08:0} var groupData={AKUN:$AKUN',KELUNIT:$KELUNIT',NMUNIT:$NMUNIT} isGroupSingle.aggregate([ {$match:{$and:[filterData]}, {$group:{{u id:groupData}} ]).toArray(功能(错误、数据){
var filterData={SAL04:0,SAL05:0,SAL06:0,SAL07:0,SAL08:0}
var groupData={AKUN:$AKUN',KELUNIT:$KELUNIT',NMUNIT:$NMUNIT}
isGroupSingle.aggregate([
{$match:{$and:[filterData]},
{$group:{{u id:groupData}}
]).toArray(功能(错误、数据){
如果(错误)
json(错误);
else if(数据)
json(数据);
});
我的回答是:
[
{
"_id": {
"AKUN": "31218",
"KELUNIT": "312181706",
"NMUNIT": "PBB CABANG PRINGSEWU"
}
},
{
"_id": {
"AKUN": "31218",
"KELUNIT": "312181703",
"NMUNIT": "PBB LAMPUNG"
}
},
{
"_id": {
"AKUN": "31218",
"KELUNIT": "312181503",
"NMUNIT": "PBB CABANG KARAWANG"
}
}
]
我想这样:[{“AKUN”:“47377”,“KELUNIT”:“83773873”,“NMUNIT”:“PBB BLA BLA”},…]
聚合阶段正是您需要的。顾名思义,它将整个文档替换为指定的文档(在您的案例中为单个字段):
db.collection.aggregate([
// ...
{$replaceRoot:{newRoot:'$\u id'}}
])
注意:它在MongoDB 3.4及更新版本中提供。聚合阶段正是您所需要的。顾名思义,它将整个文档替换为指定的文档(在您的案例中为单个字段):
db.collection.aggregate([
// ...
{$replaceRoot:{newRoot:'$\u id'}}
])
注意:它在MongoDB 3.4及更新版本中提供