【问题标题】:What does "value 1" of parameter of mongodb's "createIndex" mean?mongodb的“createIndex”参数的“值1”是什么意思?
【发布时间】:2018-10-10 07:49:16
【问题描述】:

我想为一个mongodb集合创建主键,看教程的时候,下面的东西总是不解释。

mongodb的createIndex参数值是什么意思?

例如,在

https://www.sitepoint.com/7-simple-speed-solutions-mongodb/

索引是用 createIndex 创建的。最基本的索引命令 用户集合中的 country 字段升序排列:

db.user.createIndex({ country: 1 });

您的大部分索引可能是单个字段,但您可以 还可以在两个或多个字段上创建复合索引。例如:

db.user.createIndex({国家:1,城市:1});

我不明白值 1 是什么意思。 “db.someCollection.createIndex({someField:1})” 随处可见,但从未解释过 1 值的含义。

1 值在 mongodb 的集合的 createIndex 中意味着什么?可以是 2、3 还是 -1?

【问题讨论】:

    标签: mongodb


    【解决方案1】:

    数字1 表示in ascending order-1 将按降序索引集合。这不会影响您接收单个文档的查询。当您对多个文档进行排序时,方向无关紧要,因为 mongodb 可以双向遍历索引。

    当您使用复合键时,顺序是相关的。有关复合索引中的排序顺序,请参阅官方文档:https://docs.mongodb.com/manual/core/index-compound/#sort-order

    【讨论】:

      【解决方案2】:

      根据MongoDB docs

      对于字段的升序索引,指定值为 1;为了 降序索引,指定值 -1。

      【讨论】:

        【解决方案3】:

        我能够在 mongoDB 3.4 上创建值为 2、3 甚至值为 -2 和 -3 的索引
        当我将该值更新为 0 时,索引被删除。

        根据https://docs.mongodb.com/manual/reference/method/db.collection.createIndex/

        包含字段所在的字段和值对的文档 索引键和值描述了该索引的类型 场地。对于字段的升序索引,指定值 1;为了 降序索引,指定值 -1。

        【讨论】:

          猜你喜欢
          • 2019-04-25
          • 2021-09-25
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-12-28
          • 1970-01-01
          • 2021-03-04
          相关资源
          最近更新 更多