程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了根据gt和lt创建mongodb索引大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决根据gt和lt创建mongodb索引?

开发过程中遇到根据gt和lt创建mongodb索引的问题如何解决?下面主要结合日常开发的经验,给出你关于根据gt和lt创建mongodb索引的解决方法建议,希望对你解决根据gt和lt创建mongodb索引有所启发或帮助;

我的收藏中有很多文档叫做“产品”,
我想通过为其创建索引来提高性能。

问题在于 IDK 索引是如何工作的,所以 IDK 索引会有所帮助。

我最常用的查询是关于字段“storEID”和“SALEsDates”
storEID 只是字符串,所以我认为创建索引很好,
但棘手的是 SALEsDates,SALEsDates 是 Object 有两个字段 from 和 to 喜欢这个

product { 
 ...someFIElds,storEID: String,SALEsDate  {
  from: Date time number
  to: Date time number
 }
}

我的查询基于 $gt $lt 例如

product.find({
storEID: "blah",SALEsDate.from : {$gt: 1423151234,$lt: 15123123123 }
})

product.find({
storEID: "blah",SALEsDate.from: {$gt: 1423151234},SALEsDate.to: {$lt: 15123123123 }
})

这个案例的正确索引是什么?

解决方法

对于您的特定用例,我建议您仅在 from 键并在您的查找查询中使用 $ge$le

原因是索引的键数越少(在可以避免多个键查询的情况下)越好。

确保您按照以下顺序进行索引和查找操作。

索引命令和顺序:

db,product.createIndex({
     "storEID": 1,"SALEsDate.from": -1,// Change `-1` to `1` if you want to ISODate key to be indexed in Ascending order
})

查找命令:

db,product.find({
     "storEID": "blah","SALEsDate.from": {$gt: 1423151234,$lt: 15123123123 },})

大佬总结

以上是大佬教程为你收集整理的根据gt和lt创建mongodb索引全部内容,希望文章能够帮你解决根据gt和lt创建mongodb索引所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。