我正在使用mongo 2.2.3和Java驱动程序。
我的困境是,我必须将一个字段和值插入一个数组中,但是我似乎无法弄清楚该如何做。我的数据样本:
"_id" : 1,
"scores" : [
{
"type" : "homework",
"score" : 78.97979
},
{
"type" : "homework",
"score" : 6.99
},
{
"type" : "quiz",
"score" : 99
}
]
我可以在 shell 中插入:
db.collection.update({_id:1},{$push:{scores:{type:"quiz", score:99}}})
但是,当我将其翻译成Java时,我迷惑了自己,将键盘卡在墙上。
到目前为止,我的Java代码(不完整和错误):
DBObject find = new BasicDBObject("_id", 1);
DBObject push = new BasicDBObject("$push", new BasicDBObject(
"scores", new BasicDBObject()));
最佳答案
DBObject listItem = new BasicDBObject("scores", new BasicDBObject("type","quiz").append("score",99));
DBObject updateQuery = new BasicDBObject("$push", listItem);
myCol.update(findQuery, updateQuery);
关于java - (MongoDB Java)将$ push到数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15436542/