【发布时间】:2015-01-28 12:25:44
【问题描述】:
我已经在互联网上彻底搜索过,但没有找到解决方案。
问题:我想更新此文档中的数量。条件 - itemId=126260, accessDays=30
`{ “_id”:ObjectId(“547acfa95ca86bec2e000029”), “session_id”:“1111”, “电子邮件”:“aasdasda@sdfsd.com”, “已处理”:0, “优惠券应用”:“”, “国家”:2, “项目” : [ { “项目 ID”:126260, “批号”:102970, “accessDays”:空, “数量”:2 }, { “项目 ID”:126260, “batchId”:空, “accessDays”:30, “数量”:2 } ] }`
我正在尝试使用 PHP 来做到这一点:
`$condition = array( "session_id"=>'1111', 'items.itemId'=>126260, 'items.accessDays'=>30);
$new_values = array( '$set' => array("items.$.quantity" => 10) );
$cart_coll->update($condition, $new_values);`
但是当我运行这段代码时,它会更新第一个嵌套对象而不是第二个。
我在这里做错了什么? mongodb不考虑嵌套对象中的多个条件吗?
【问题讨论】: