在数据分析中经常要按天统计,在sql中有对应的函数,而mongo也可以用聚合管道实现:
脚本:
db.leaseorders.aggregate([
{ $match: { tenantId: "5" } },
{
$project: {
quantity: 1, time: { $dateToString: { format: "%Y-%m-%d", date: "$orderTime" } },
}
},
{ $group: { _id: "$time", count: { $sum: 1 }, qty: { $sum: "$quantity" } } },
{ $sort: { "_id": -1 } },
{ $project: { count: 1, qty: 1,日期: { $toUpper: "$_id" }, _id: 0 } }
])
运行:
Spring mongo实现:
注意主要是红线部分。
更多聚合管道内容点击:https://gitbook.cn/gitchat/activity/5c1b74ac52d99437c2b822e9
点此欢迎光临我的个人网站【一几文星球】
微信公众号,欢迎关注,一起学习。