MongoDB BSON 文档中的键顺序重要吗?

2024-05-09

我知道某些推荐需要对 hashmap / 字典进行排序,但是 MongoDB 中的实际 BSON 文档重要吗?索引是否仍然有效?

E.g.

db.people.ensureIndex({LName:1, FName:1});

它对两者都有效吗:

{LName:"abc", FName:"def"}, 
{FName:"ghi", LName:"jkl"} 

?

Thanks


文档属性的顺序不会影响索引。

您可以通过运行以下查询来亲自查看:

db.people.find({LName: "abc"}).explain()

然后这个查询:

db.people.find({LName: "jkl"}).explain()

您应该看到 MongoDB 在这两种情况下都会使用索引(cursor财产应该是这样的"BtreeCursor LName_1_FName_1").

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MongoDB BSON 文档中的键顺序重要吗? 的相关文章

  • 我需要显式关闭连接吗?

    我持有一个实例MongoClient and DB在我的应用程序中 每次我想执行某些操作时 我都会调用getCollection 我想知道是否需要显式关闭连接 就像connection close 在 JDBC 中 强调一下 我只有一个Mo
  • 如何使用 mongodb 处理多个操作并获取计数?

    在这里 我为图表中的显示计数日期创建了一个查询 我已经使用了mongodb 我有一个对象 在该对象中存储多个数据并用一个值分隔Action 我想显示计数日期明智的操作 例如评论 就像两个操作计数都想显示一样 现在我只是显示评论数 我也想得到
  • 如何配置嵌入式 MongoDB 以在 Spring Boot 应用程序中进行集成测试?

    我有一个相当简单的 Spring Boot 应用程序 它公开一个小型 REST API 并从 MongoDB 实例检索数据 对 MongoDB 实例的查询通过基于 Spring Data 的存储库 下面的一些关键代码 Main applic
  • Express MongoDB find() 基于 _id 字段

    因此 在我的 Express 应用程序中 我尝试根据我的 id 字段查找 请参阅下面我的 MongoDB 记录 id oid 58c2a5bdf36d281631b3714a title EntertheBadJah subTitle Lo
  • NoSQL(MongoDB)与 Lucene(或 Solr)作为数据库[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 随着基于文档数据库的 NoSQL 运动的发展 我最近关注了 MongoDB 我注意到如何将项目视为 文档 就像 Lucene 以及 Solr 用
  • mongodb/node.js 中单文档并发读写操作的问题

    编辑 6 15我尝试运行相同的代码 在调用之前添加延迟 doSafePush 再次收到 ConcurrencyDBError 时 即执行return when resolve wait delay 35 then function doSa
  • MongoDB 更新。尝试从一个字段的属性设置另一个字段

    我想做的事情非常简单 但我不知道如何为一个字段赋予另一个字段的值 我只想用另一个字段的字符数更新一个字段 db collection update exists true set field1 field2 length 我试过给它点符号
  • mongodb C# 异常无法从 BsonType Int32 反序列化字符串

    我是在 C 中使用 mongo db 的新手 但我正在尝试在 mongo db 中导入大型数据库 MyDb 由仅具有简单参数 Id Body Title Tags 的实体组成 这是 mongo 中实体的示例 Id someff asdsa
  • 对开始和结束范围进行分组和计数

    如果我有以下格式的数据 id 1 startDate ISODate 2017 01 1T00 00 00 000Z endDate ISODate 2017 02 25T00 00 00 000Z type CAR id 2 startD
  • 有一种方法可以在 MongoDB 中强制引用完整性 [重复]

    这个问题在这里已经有答案了 当您搜索与 Mongo DB 相关的引用完整性时 标准响应是 MongoDB 不支持此 标准解释是 MongoDB 支持 refs 和 populate 但是没有什么可以阻止您将 ref 更改为无效值 对于许多具
  • MongoDB - 从每个对话中获取最后一条消息?

    我有一个对话集合 id from userA to userB message Hello datetime 我想显示用户对话的预览 当前用户与任何其他用户之间每次对话的最后一条消息 因此 当用户单击某些 最后一条消息 时 他会转到下一页
  • 下一个和上一个文档

    我正在制作一个图片库 每个图像都有一个 id 当我查看图像时 我想要接下来的 3 个图像和之前的 3 个图像 我怎样才能在 mongodb 查询中得到这个 我认为我可以使用 sort by id 因为这是不可排序的 也许使用mapReduc
  • 从 JSON 字符串创建 BSON 对象

    我有一个 Java 应用程序 它从外部应用程序获取数据 传入的 JSON 位于字符串中 我想解析该字符串并创建 BSON 对象 不幸的是 我在 Java 的 BSON 实现中找不到该 API 我是否需要使用外部解析器 例如 GSON 而且
  • mongo docker 镜像创建后未运行脚本

    我使用 docker compose 为前端 后端和 mongo 实例创建 3 个不同的容器 其中三个正在运行并在它们之间连接 但我需要在 mongo 实例运行后立即在数据库上创建一个管理员用户 根据 mongo 图像文档 每个脚本位于do
  • 为任何更新查询增加 Mongoose 文档版本的简单方法?

    我想开始利用 Mongooses 文档版本控制 v key 我在实际增加版本值时遇到了问题 然后我发现您必须添加this increment 执行查询时 有没有办法自动递增 目前 我只是将其添加到pre用于更新类型查询的中间件 module
  • 致命错误 - 未找到“Mongo”类

    我正在尝试执行此操作 但我收到以下错误 致命错误 在 C wamp www 中找不到类 Mongo Info PHP 5 38 MongoDB mongodb win32 i386 2 0 2 MongoDB PHP 驱动程序 mongo
  • mongodb 更新所有文档,并将值增加 1 [重复]

    这个问题在这里已经有答案了 我在 mongoDB 中有几个文档 文档结构是这样的 a abc myid 2 我想用 1 更新所有文档的 myid 例如 第一个文档 myid 1 第二个文档 myid 2 依此类推 有询问吗 尝试这个查询 d
  • 错误:键 $conditionalHandlers 不得以 '$' mongodb 开头

    我对 mongodb 特别是 Node js 的 mongoose 包有疑问 我有以下架构 var Schema mongoose Schema var location new Schema nomville type String re
  • mongodb 正在运行吗?

    我已经在我的 Unix 服务器上安装了 Mongodb 和 PHP 驱动程序 我的问题是如何判断 Mongodb 是否正在运行 是否有一个简单的命令行查询来检查状态 如果我从外壳程序启动一次 如果我退出外壳程序 它会继续运行 情况似乎并非如
  • 为 MongoDB 中的对象数组建立索引

    我有一个巨大的电子邮件转储 我正在尝试在 MongoDB 中存储和查询它 有 160 万封电子邮件 每封电子邮件都存储为节点模块 https github com andris9 mailparser它将原始电子邮件解析为漂亮的 Javas

随机推荐