2015-10-15 46 views
1
//STUDENT collection 

{ 

'name':'qwerty', 

'college':'123' , 

'BLOGS':[ 

{'title':'music', 'desc':'party' } 
, 

{'title':'sports', 'desc':'cricket' } 

] 

} 

我需要打印整個文檔where title ='sports'?find()mongodb文件asp內部數組元素條件

db.STUDENT.find({'BLOGS.title':'sports'},{'_id':0,'BLOGS':1}); 

不適合我,幫忙!!!!!

回答

0

使用$elemMatch只返回BLOGS陣列,其中title字段具有"sports"一個值的第一匹配部件:

db.STUDENT.find({ "BLOGS.title": "sports" }, 
    { 
     "_id": 0, 
     "BLOGS": { 
      "$elemMatch": { "title": "sports" } 
     } 
    } 
) 

樣本輸出:

/* 0 */ 
{ 
    "BLOGS" : [ 
     { 
      "title" : "sports", 
      "desc" : "cricket" 
     } 
    ] 
} 
+0

Thanyou「$ elemMatch「工作。 –