【问题标题】:Creating MongoDB index for all items in array为数组中的所有项目创建 MongoDB 索引
【发布时间】:2015-11-17 03:23:22
【问题描述】:

我的 mongodb 数据库中有一些具有以下结构的文档,我想知道如何为 document.data.0.data[0-9999].val1 创建索引?

我的问题是我在哪里输入 [0-9999] 我不知道这个数据数组中有多少元素,但我希望这个数组中的所有元素在 val1 键上都有一个索引。

有什么建议吗?

{
  "_id" : ObjectId("55c455c2fc07853b78c4b6b9"),     
  "data": {
    "0": {
      "data": [
      {
        val1: "abc",
        val2: "def"
      },
      {
        val1: "abc",
        val2: "def"
      }
      ]
    }
  }
}

【问题讨论】:

    标签: mongodb


    【解决方案1】:

    您没有在索引中包含数组索引值,所以它只是:

    db.mycoll.ensureIndex({'data.0.data.val1': 1})
    

    这在 MongoDB 中称为 multikey 索引。

    【讨论】:

    • 我会试试的。它会知道它必须为所有元素创建索引?
    猜你喜欢
    • 2021-06-23
    • 2014-01-30
    • 1970-01-01
    • 2016-11-15
    • 1970-01-01
    • 2021-07-22
    • 2014-10-10
    • 2011-12-02
    • 2012-05-09
    相关资源
    最近更新 更多