2017-02-24 52 views
0

使用MongoDB中,我已经收集包含数据的阵列,如何检查数组包含在MongoDB中

"provinces" : [ 
    { 
     "province" : "central", 
     "provincesTypes" : [ 
      { 
       "prices" : { 
        "week" : { 
         "hourly" : 500 
        } 
       }, 
       "location" : "nature" 
      } 

我怎样做这些搜索,

  • 获得省--->省 - - >值
  • 获得省---> provincesTypes - >价格 - >周 - >每小时值
  • 获得省---> provincesTypes - >位置值
+1

让我们知道你已经尝试过 – sidgate

回答

0

使用点运算符。例如,如果你想检查每小时是高于400,你可以做到以下几点:

db.provinces.find({"provinces.province.provinceTypes.prices.week.hourly" : {$gt:400}})

希望我的回答对您有所帮助

0

当我知道你想结果和所有3个条件适用,因为你必须像这样查询:

db.provinces.find({"provinces.province":"value", 
"provinces.provinceTypes":{ 
$elemMatch:{"prices.week.hourly":{$gt:400},"location":"value"}}}) 

试试这个。