gpt4 book ai didi

node.js - 返回数组值的匹配记录并按 Mongoose 中的其他属性分组?

转载 作者:行者123 更新时间:2023-12-04 08:56:40 25 4
gpt4 key购买 nike

我们正在使用 MongoDB 带有 NPM 库的 NoSQl 数据库 Mongoose Nodejs .
我有一个名为“ USERS ”的集合,文档格式如下:

{user_number: 12, region:"Pune"},
{user_number: 13, region:"Mumbai"},
{user_number: 14, region:"Mumbai"},
{user_number: 15, region:"Punjab"},
{user_number: 16, region:"Delhi"},
{user_number: 17, region:"Pune"}
我有 user_Number=[12,13,14,15] 的数组所以我想返回 的匹配记录用户号码按地区分组 .
User_number 数组是动态的。
预期输出是:
{"data":{
{
"_id": {
"region": "pune"
},
"count": 1,
"region": "Pune"
},
{
"_id": {
"region": "Mumbai"
},
"count": 2,
"region": "Mumbai"
},
{
"_id": {
"region": "Punjab"
},
"count": 1,
"region": "Punjab"
},
}
}
你能请人用最好的方法指导我吗?
提前致谢!

最佳答案

您可以使用 $match$group在你的夸张管道中做到这一点:

db.collection.aggregate([
{
"$match": {
user_number: {
$in: [12,13,14,15]
}
}
},
{
$group: {
_id: "$region",
count: {
$sum: 1
}
}
}
])
你可以在 mongoplayground 上试试这个: https://mongoplayground.net/p/tXpwtngnU1B

关于node.js - 返回数组值的匹配记录并按 Mongoose 中的其他属性分组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63791869/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com