2016-08-29 542 views
3

我有一個對象集合,它有一個子字典,其中包含一個給定機構的數據,由provider_id標識。查詢子文檔MongoDB Node.JS

如何查詢集合products並只返回包含給定提供者ID的產品?

"natl_total_cost": 1.27478784E9, 
    "natl_average": 8338.487, 
    "natl_report_count": 152880, 
    "name": "Wax", 
    "provider_cost_dict": { 
    "340008": { 
     "report_count": 181, 
     "total_cost": 1335465, 
     "average_cost": 7378.26 
    }, 
    "340001": { 
     "report_count": 643, 
     "total_cost": 5026724, 
     "average_cost": 7817.6113 
    }, 
... 

我怎麼能查詢所有的產品,使其只返回一個包含其provider_cost_dict一個給定的供應商ID產品?

+0

你可以發表你的架構?上述文件中的'340008'是什麼? –

+0

'340008'是一個供應商ID,抱歉。 – Clip

回答

3

可以使用$exists運營商,像這樣

db.getCollection('yourColl').find({"provider_cost_dict.340008": { $exists: true }})