2012-06-14 12 views
8

itemsサブ文書なしで_id,user_idおよびtotalのみを返す方法があるかどうかを知りたいと思います。は、単一のプロパティ "_id"を返す

{ 
    "_id" : 122, 
    "user_id" : 123456, 
    "total" : 100, 
    "items" : [ 
      { 
        "item_name" : "my_item_one", 
        "price" : 20 
      }, 
      { 
        "item_name" : "my_item_two", 
        "price" : 50 
      }, 
      { 
        "item_name" : "my_item_three", 
        "price" : 30 
      } 
    ] 
} 
+0

「{}」アイコンをクリックして適切に字下げするには、[よくある質問](http://stackoverflow.com/faq#signatures)もご覧ください。 –

答えて

14

find lets you select fieldsの第2パラメータ。

db.mycollection.find({}, {"user_id": 1, "total": 1}); 

あなたはまた、特定のフィールドを除外することができますので、これは相当します:だから、あなたはこれを使用することができます(_idフィールドは常にとにかく選択されていることに注意してください)

db.mycollection.find({}, {"items": 0}); 

あなたはで_idフィールドを除外することができます

db.mycollection.find({}, {"user_id": 1, "_id": 0}); 
+1

+1明示的に_idフィールドも除外できると思います。 – Thilo

+0

@Thiloあなたは正しいです、私はそれを確認したばかりです。 – McGarnagle

+0

答えを編集して明確にすることができます - _id:0は_idフィールドを除外します –

関連する問題