mongodb同时实现分组和分页
2个回答
2015-06-04 · 知道合伙人软件行家
Axure夜话
知道合伙人软件行家
向TA提问 私信TA
知道合伙人软件行家
采纳数:1197
获赞数:1344
1992年毕业于太原理工大学,20年IT公司工作经验现任山西誉海和科技有限公司技术总监,老二牛车教育课程总监
向TA提问 私信TA
关注
展开全部
参考代码:
var pipeline =[
{
$match: {
sjbh: {$gte: beginDate, $lte:endDate}
}
},
{
$group: {
_id: "$gsbh",
totaltxl: {$sum: { $cond: { if: { $ne: [ "$totalnum","" ] }, then:"$txl" , else: 0 }}},
totalbmynum: {$sum: "$bmynum"}
}
},
{
$project: {
_id: 0,
gsbh: "$_id",
totaltxl: "$totaltxl",
totalbmynum: "$totalbmynum",
ratio: { $divide: [ "$totalbmynum", { $cond:{if: { $eq: [ "$totaltxl",0 ] }, then:1 , else: "$totaltxl" }}] }
}
},
{$sort: {ratio: -1}},
{$limit: 5}
{$skip : 5}
]
opts.dbs.csdb.collection("permydfx").aggregate(pipeline).......
var pipeline =[
{
$match: {
sjbh: {$gte: beginDate, $lte:endDate}
}
},
{
$group: {
_id: "$gsbh",
totaltxl: {$sum: { $cond: { if: { $ne: [ "$totalnum","" ] }, then:"$txl" , else: 0 }}},
totalbmynum: {$sum: "$bmynum"}
}
},
{
$project: {
_id: 0,
gsbh: "$_id",
totaltxl: "$totaltxl",
totalbmynum: "$totalbmynum",
ratio: { $divide: [ "$totalbmynum", { $cond:{if: { $eq: [ "$totaltxl",0 ] }, then:1 , else: "$totaltxl" }}] }
}
},
{$sort: {ratio: -1}},
{$limit: 5}
{$skip : 5}
]
opts.dbs.csdb.collection("permydfx").aggregate(pipeline).......
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
分页使用skip就可以了,分组需要group分。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询