什么"值1" mongodb" createIndex"的参数意思?

时间:2018-04-30 08:32:13

标签: mongodb

我想为mongodb集合创建主键,在阅读教程时,始终没有解释以下内容。

mongodb" createIndex"的参数值是多少?意思?

例如,在

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

  

使用createIndex创建索引。索引最基本的命令   用户集合中的国家/地区字段按升序排列:

     

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

     

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

     

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

我不明白价值观1是什么意思。 " db.someCollection.createIndex({someField:1})"可以在任何地方找到,但1值的含义从未解释过。

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

3 个答案:

答案 0 :(得分:2)

根据MongoDB docs

  

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

答案 1 :(得分:2)

该数字表示in ascending order-1将按降序索引集合。这不会影响您收到单个文档的查询。排序多个文档时方向不相关,因为mongodb可以在两个方向上遍历索引。

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

答案 2 :(得分:1)

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

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

  

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