すべてをクエリする方法{"module" : "B"}
?
次のクエリは機能しません。
db.XXX.find({ "_id" : { "module" : "B" } });
トンありがとう!
データは次のようになります。
{
"_id" : {"module" : "A","date" : ISODate("2013-03-18T07:00:00Z")},
"value" : {"count" : 1.0}
}
{
"_id" : {"module" : "B","date" : ISODate("2013-03-18T08:00:00Z")},
"value" : {"count" : 2.0}
}
試してください:
db.XXX.find({ "_id.module" : "B" });
違いは、元のクエリがそのサブドキュメント全体に一致しようとすることです(つまり、_idは、値が「B」で他の何もない「モジュール」フィールドを含むサブドキュメントです)。
リファレンス: MongoDB Dot Notation
サブドキュメントの完全一致の場合
db.bios.find(
{
'_id.module': 'B'
}
)
クエリはdot
表記を使用してsubdocument
のフィールドにアクセスします。
ドット表記を使用します。
db.XXX.find({ "_id.module" : "B" })