首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于分离查询的Node Mongoose分离索引

用于分离查询的Node Mongoose分离索引
EN

Stack Overflow用户
提问于 2020-01-03 22:23:00
回答 1查看 24关注 0票数 2

我们可以为同一集合上完全独立的查询创建完全独立的索引吗?

我想要一个有效的查询用户检索他们的活动使用这样的索引

代码语言:javascript
复制
index{ userDBID: 1 }

示例查询

代码语言:javascript
复制
ActivityModel.find({ userDBID }).lean();

我想要一个单独的有效的查询整个应用程序的统计数据,这也获得活动,但需要使用一个单独的复合索引,像这样

代码语言:javascript
复制
index{season: 1, matchID: 1}

示例查询

代码语言:javascript
复制
ActivityModel.find({ season, matchID }).lean()
ActivityModel.find({ season }).lean();

我发现很难找到一个可靠的高质量的答案。我知道hint()似乎是一个解决方案,但我对此持怀疑态度。

丹尼尔

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-01-04 04:39:19

你当然可以。

您可以只添加以下内容:

代码语言:javascript
复制
schema.index({ userDBID: 1 });
schema.index({ season: 1, matchID: 1 });

就在您的模式声明之后,在使用mongoose.model('Model', schema);保存模型之前。

您将看到(在一段时间后)添加到DB中的新模式。如果您使用像MongoDB Compass这样的检查工具,您甚至会有一个直观的表示。

我在一个生产应用程序中有效地使用了它,所以我确信这一点(就是今天的用法):

http://prntscr.com/qj1n2o

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59580200

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档