MongoDB 2.6 兼容性改变 -- db.collection.aggregate()改变
admin
2023-04-11 23:04:04
0

MongoDB 2.6 兼容性改变 -- db.collection.aggregate()改变


描述


db.collection.aggregate()方法在mongo shell中,默认返回结果集的游标。这个修改使得聚合管道返回任何大小的结果集,需要游标遍历来访问结果集。例如:

var myCursor = db.orders.aggregate( [
{
$group: {
_id: "$cust_id",
total: { $sum: "$price" }
}
}
] );
myCursor.forEach( function(x) { printjson (x); } );

 

之前的版本返回带有字段result的单一文档,它包含了结果集的一个数组,受限于BSON文档大小限制。在MongoDB之前的版本访问结果集需要访问result字段,并遍历数组。例如:

var returnedDoc = db.orders.aggregate( [
{
$group: {
_id: "$cust_id",
total: { $sum: "$price" }
}
}
] );
var myArray = returnedDoc.result; // access the result field
myArray.forEach( function(x) { printjson (x); } );

 

解决方案


修改脚本,当前期待db.collection.aggregate()返回一个文档带result数组字段,替换为处理游标。

 

可以参考


聚合增强

db.collection.aggregate()

相关内容

热门资讯

定做衣柜要多少钱索菲亚定做衣柜... 回答1: 定做衣柜都是按平米计算的 索菲亚衣柜在全国有连锁店,价格也是统一的,一般一线城市跟...
九牧和箭牌的区别 最佳回答 九牧和箭牌的产品都是挺不错的,不过这两个品牌还是有一定的区别的,首先九牧和箭牌的成立时间是...
箭牌卫浴价格贵不贵求价格表 我家买了一个箭牌的马桶,我还是听我的朋友说这个牌子的马桶很好,我才去买的,花了一千三百多块钱,心痛死...
展示柜的价格是怎么定的 都是按米卖的,不同的展示柜价格肯定是不同的,到厂家了解就知道了 超市冷柜/便利店冷柜/冰柜...
辟谣!河南公布7起网络谣言典型... 4月,河南持续做好涉企业、“三农”、公共政策、社会热点、文化旅游网络谣言的发现辟除,有力打击谣言传播...
企业买AI,从“尝鲜”变成“算... 【大河财立方 记者 陈薇】以前企业采购人工智能大模型,大多只是抱着试一试的心态:这笔费用归在创新预算...
宇树发布全球首款量产版载人机甲... 【大河财立方消息】 5月12日,据宇树科技官微,宇树发布GD01载人变形机甲,定价390万元起。据介...
中国驻荷兰使馆提醒:在荷中国公... 根据世界卫生组织近日通报,一艘极地探险邮轮上出现了汉坦病毒感染病例。截至5月11日,造成至少8例感染...