mongodb搜索关键空间

时间:2016-05-25 20:24:06

标签: mongodb

我的gameItem集合中有数以千计的项目,以下为例。

{
    "weapon name 1":{price:01},
    "weapon name 2":{price:100}
}

我在shell

中运行这样的查询
db.gameItems.find({"weapon name 1":{$exists:1}})

什么都没有返回,但是当我的键没有空格时它会起作用...

第一个问题:有没有办法用空格搜索键值? 第二个问题:我应该改变我的数据模型吗?:

   {
      weapon:{name: "weapon name 1", price:01}
      weapon:{name: "weapon name 2", price:100}
   }

然后在武器名称字段中添加索引?这是否会增加每个武器文档中只有2个字段的搜索性能?

由于

编辑:

道歉,似乎db collection gameItems实际上看起来像这样......

{
   last_updated:"2016-04-01",
   items:{
          "weapon name 1":{price:01},
          "weapon name 2":{price:100}
   }
}

那么如何在项目文档中搜索它们呢?

1 个答案:

答案 0 :(得分:2)

使用单引号,其中key有空格。

在下面跑。

      db.gameItems.find({'weapon name 1':{$exists:1}})