如何在Mongodb

时间:2016-02-10 09:10:17

标签: json mongodb mongodb-query

我需要在MongoDB中存储一些元素,其特征是'类别'和'子类别',类似于:

{" item1":{" categories":" restaurant,bar"," subCategories":" fish,steak ,咖啡"}}

我的问题是,考虑到我会搜索像' bar'这样的关键字,这个项目存储的最佳方式是什么?或者' fish' ?是否更好地将所有关键字存储为一个字符串(案例1)或字符串数​​组(案例2)?

  {"item1": {
            "categories"   : "restaurant, bar", 
            "subCategories": "fish, steak, coffe"
           }
  }

{"item1": 
          {
           "categories"   : ["restaurant", "bar"], 
           "subCategories": ["fish", 'steak", "coffe"]
          }
}

哪种表现最佳?

1 个答案:

答案 0 :(得分:1)

您应该使用第二个选项。

{"item1": 
          {
           "categories"   : ["restaurant", "bar"], 
           "subCategories": ["fish", 'steak", "coffe"]
          }
 }

这使您可以使用$in $not等操作数在数据库端进行查询。您的第一个选项将要求您以全文搜索或客户端方式进行搜索,并且会慢一些。