想查询满足 a,b,c,d 四个条件(加了组合索引),然后按 username 分组,求组的数量。
let cnt = await Game.aggregate([
{
$match: {
a,
b,
c,
d,
}
},
{
$group: {
_id:"$username",
}
},
{
$count: "cnt",
}
]);
使用的是 mongoose 创建组合索引
GameSchema.index({a:1,b:1,c:1,d:1});
现在大约才 200 条数据,这个查询要 200ms 左右,是哪里出问题了吗
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.