MongoDb Datenanzeige so.finden Objekt Array Datenfeld in Mongodb
{
"_id" : ObjectId("57b1fc8b6ad888063048e72e"),
"createdprojectName" : "Buffer Stock",
"createdprojectData" : [
{
"Status" : "OnAir",
"No" : "1",
"Site_Name" : "hjghjgjhg",
"Site_ID" : "gjhgjhg",
"OnAir_Target_Date" : "2016-08-01",
"Region" : "1",
"OnAir_Actual_Date" : "2016-08-10",
"G2_3G_4G" : "2G"
},
{
"Status" : "TE WIP",
"No" : "2",
"Site_Name" : "sadsdssd",
"Site_ID" : "dvvs",
"OnAir_Target_Date" : "2016-08-01",
"Region" : "1",
"OnAir_Actual_Date" : "",
"G2_3G_4G" : "2G"
},
{
"Status" : "OnAir",
"No" : "1",
"Site_Name" : "sadsadsdadadadsadsad",
"OnAir_Target_Date" : "2016-07-01",
"Site_ID" : "sadsad",
"OnAir_Actual_Date" : "2016-07-13",
"Region" : "1",
"G2_3G_4G" : "3G"
}],
"createdprojectChechByManager" : "false"
}
Ich möchte nur Status
= OnAir
Datenfilterung über Datenfelder zu finden. Nach dem Filtern über Daten sollte es ohne Status
= TE WIP
Datenobjekt angezeigt werden. Wie ich Abfrage mit mongodb Abfrage erstellen.
BasicDBObject findQuery = new BasicDBObject();
BasicDBObject elemMatch = new BasicDBObject();
DBObject statusQuery = new BasicDBObject("Status", "OnAir");
DBObject fields = new BasicDBObject("$elemMatch", statusQuery);
DBObject query = new BasicDBObject("createdprojectData",fields);
findQuery.put("createdprojectData", 1);
DBCursor cursor = collection.find(query, findQuery);
@ user3807112 war Kann ich dein Problem lösen? – user641887